<simulation>
  
<header>
    
<title lang="french">Simulation de titrage acido-basique en milieu
    aqueux
</title>
    
<title lang="english">Simulation of acid-alkali titration in water</title>
    
<title lang="german">Simulation einer Säure-Base-Titration in
    Wasser
</title>
    
<title lang="spanish">Simulación de titulación acido-básico en agua</title>
    
<author>André Pauss, Stéphane Mottelet, Ivan Guillot, Guillaume Barbaud, UTC</author>
    
<date>August 24th, 2005</date>
    
<keywords>simulation,scilab,xml, pH</keywords>
    
<keywords lang="german">Simulation,scilab,xml,pH</keywords>
    
<keywords lang="spanish">Simulación, scilab, xml, pH</keywords>
  
</header>
  
<notes lang="french">
    
<p>Cette simulation permet de simuler le titrage d'un acide ou d'une base
    choisi parmi une liste proposée, par un acide ou une base. Le pH, les
    différentes formes de l'espèce titrée, ainsi que l'avancement de la
    réaction sont tracés en fonction en fonction du volume de titrant. Tous
    les paramètres (caractéristiques des espèces titrantes et titrées, volumes
    initiaux, concentration initiales, eau de dilution, nombre de points
    intermédiaires pour le calcul, ...) peuvent etre modifiés.
</p>
  
</notes>
  
<notes lang="english">
    
<p>This simulation allows to simulate the titration of an analyte by a
    titrant, both chosen among a proposed list of chemicals. The pH, the
    different forms of the analyte, as well as the advancement of the reaction
    are plotted against the titrant volume. All the parameters
    (characteristics of the chemicals, initial volumes and concentrations,
    dilution water, number of steps for the calculation, ...) can be adjusted
    as wished.
</p>
  
</notes>
  
<notes lang="german">
    
<p>Diese Simulation ermöglicht die Simulation einer Titration einer Säure
    oder Base, welche aus einer Liste ausgewählt werden, durch eine Säure oder
    eine Base. Der pH-wert, die verschiedenen Formen der titrierten Form sowie
    der Fortschritt der Reaktion werden graphisch dargestellt, Funktion des
    Volumens der titrierten Form. Alle Parameter (Charakteristiken der
    chemischen substanzen, Anfangs-volumen und -konzentrationen,
    Verdünnungswasser, Anzahl der Messpunkte für die Graphiken und
    Rechnungen,...) können modifiziert werden.
</p>
  
</notes>
  
<notes lang="spanish">
    
<p> Esta simulación permite simular la titulación de un acido o de una base elegido a partir de una lista, por un acido o una base (según el primero elegido).   El pH, las diferentes formas de la especie titulada, y también la progresión de la reacción son dibujados en función del volumen del titulante. Todos los parámetros (características de las especies, volúmenes iníciales, concentraciones iníciales, agua de dilución, numero de puntos intermediarios para el cálculo de la curva, ...) pueden ser modificados.        </p>
  
</notes>
  
<parameters><section>
      
<title lang="french">Sélection de l'espèce à titrer</title>
      
<title lang="english">Selection of the analyte</title>
      
<title lang="german">Wahl der titrierten Form</title>
      
<title lang="spanish">Selección de la especie a titular</title>
      
<database label="esptit">
        
<scalar increment="1" label="n_analyte" max="3" min="0" scale="1" state="normal"><name lang="french">Nombre de fonctions acides</name><name lang="english">Number of acid protons</name><name lang="german">Anzahl an Säureprotonen</name><name lang="spanish">Numero de funciones acidas</name><notes lang="french">
            
<p>3 fonctions acides au maximum pour cette simulation</p>
          
</notes><notes lang="english">
            
<p>In this simulation, up to 3 acid functions</p>
          
</notes><notes lang="german">
            
<p>Maximal bis zu 3 Säureprotonen in dieser Simulation</p>
          
</notes><notes lang="spanish">
            
<p>Funciones acidas al máximo para esta simulación</p>
          
</notes><value>1</value></scalar>
        
<scalar increment="1" label="m_analyte" max="2" min="-2" scale="1" state="normal"><name lang="french">Charge de la forme la plus acide</name><name lang="english">Electric charge of the most acid form</name><name lang="german">Elektrische Ladung der säurehaltigsten
          Form
</name><name lang="spanish">Carga de la forma más acida</name><notes lang="french">
            
<p>de -2 à +2. Exemples : HCl : 0, NH4+ : +1, Na+ : +1.</p>
          
</notes><notes lang="english">
            
<p>from -2 to +2. Examples : HCl : 0, NH4+ : +1, Na+ : +1.</p>
          
</notes><notes lang="german">
            
<p>von -2 bis +2. Beispiele: HCl: 0, NH4+: +1, Na+: +1</p>
          
</notes><notes lang="spanish">
            
<p>Desde -2 hasta +2. Ejemplos : HCl : 0, NH4+ : +1, Na+ : +1.</p>
          
</notes><value>0</value></scalar>
        
<scalar increment="0.1" label="pKa1_analyte" max="20" min="-10" scale="1" state="normal"><name lang="french">pKa1</name><name lang="english">pKa1</name><name lang="german">pKs1</name><name lang="spanish">pKal</name><notes lang="french">
            
<p>pKa1 = - log Ka1</p>
          
</notes><notes lang="english">
            
<p>pKa1 = - log Ka1</p>
          
</notes><notes lang="german">
            
<p>pKs1 = - log Ks1</p>
          
</notes><notes lang="spanish">
            
<p>pKa1 = - log Ka1</p>
          
</notes><value>4</value></scalar>
        
<scalar increment="0.1" label="pKa2_analyte" max="20" min="-10" scale="1" state="normal"><name lang="french">pKa2</name><name lang="english">pKa2</name><name lang="german">pKs2</name><name lang="spanish">pKa2</name><notes lang="french">
            
<p>Pour un monoacide, un pKa d'au moins 20 permet mathématiquement
            d'ignorer les fonctions acides inexistantes. Le second pKa doit
            etre supérieur au premier, mais le programme ne vérifie pas si
            vous introduisez des valeurs aberrantes.
</p>
          
</notes><notes lang="english">
            
<p>For a monoacid, a pKa greater or equal to 20 permits to ignore
            mathematically the non-existent acidities. This second pKa must be
            greater than the first one, but the program does not check if you
            select chemically abnormal values.
</p>
          
</notes><notes lang="german">
            
<p>Bei Monosäuren erlaubt ein pKs von mindestens 20, die
            inexistenten Säureprotonen mathematisch zu ignorieren. Der zweite
            pKs muss größer sein als der erste, jedoch überprüft das Programm
            nicht ob chemisch anormale Werte eingegeben werden.
</p>
          
</notes><notes lang="spanish">
            
<p>Para un mono ácido, un pKa de mínimo 20 permite matemáticamente ignorar las funciones acidas inexistentes. El segundo pKa debe ser superior al primero, pero el programa no comprobara si inserta valores absurdos.</p>
          
</notes><value>20</value></scalar>
        
<scalar increment="0.1" label="pKa3_analyte" max="20" min="-10" scale="1" state="normal"><name lang="french">pKa3</name><name lang="english">pKa3</name><name lang="german">pKs3</name><name lang="spanish">pKa3</name><notes lang="french">
            
<p>Pour un monoacide ou un diacide, un pKa d'au moins 20 permet
            mathématiquement d'ignorer les fonctions acides inexistantes. Le
            troisième pKa doit etre supérieur aux deux premiers, mais le
            programme ne vérifie pas si vous introduisez des valeurs
            aberrantes.
</p>
          
</notes><notes lang="english">
            
<p>For a monoacid or a diacid, a pKa greater or equal to 20
            permits to ignore mathematically the non-existent acidities. This
            third pKa must be greater than the first and the second, but the
            program does not check if you select chemically abnormal
            values.
</p>
          
</notes><notes lang="german">
            
<p>Bei Mono- oder Disäuren erlaubt ein pKs von mindestens 20, die
            inexistenten Säureprotonen mathematisch zu ignorieren. Der dritte
            pKs muss größer sein als die zwei ersten, jedoch überprüft das
            Programm nicht ob chemisch anormale Werte eingegeben werden.
</p>
          
</notes><notes lang="spanish">
            
<p>Para un mono ácido o un di acido, un pKa de mínimo 20 permite matemáticamente ignorar las funciones acidas inexistentes. El tercero pKa debe ser superior a los dos primeros pero el programa no comprobara si inserta valores absurdos</p>
          
</notes><value>20</value></scalar>
        
<record>
          
<name lang="french">Acide citrique</name>
          
<name lang="english">Citric acid</name>
          
<name lang="german">Zitronensäure</name>
          
<name lang="spanish">Acido cítrico</name>
          
<scalar-value ref="n_analyte">3</scalar-value>
          
<scalar-value ref="m_analyte">0</scalar-value>
          
<scalar-value ref="pKa1_analyte">3.128</scalar-value>
          
<scalar-value ref="pKa2_analyte">4.761</scalar-value>
          
<scalar-value ref="pKa3_analyte">6.394</scalar-value>
        
</record>
        
<record>
          
<name lang="french">Acide o-phosphorique</name>
          
<name lang="english">o-phosphoric acid</name>
          
<name lang="german">o-Phosphorsäure</name>
          
<name lang="spanish">Acide o-fosfórico</name>
          
<scalar-value ref="n_analyte">3</scalar-value>
          
<scalar-value ref="m_analyte">0</scalar-value>
          
<scalar-value ref="pKa1_analyte">2.124</scalar-value>
          
<scalar-value ref="pKa2_analyte">7.206</scalar-value>
          
<scalar-value ref="pKa3_analyte">12.658</scalar-value>
        
</record>
        
<record>
          
<name lang="french">Acide chlorhydrique</name>
          
<name lang="english">Hydrochloric acid</name>
          
<name lang="german">Salzsäure</name>
          
<name lang="spanish">Acido clorhídrico</name>
          
<scalar-value ref="n_analyte">1</scalar-value>
          
<scalar-value ref="m_analyte">0</scalar-value>
          
<scalar-value ref="pKa1_analyte">-7</scalar-value>
          
<scalar-value ref="pKa2_analyte">20</scalar-value>
          
<scalar-value ref="pKa3_analyte">20</scalar-value>
        
</record>
        
<record>
          
<name lang="french">Acide dichloroéthanoique</name>
          
<name lang="english">Dichloroethanoic acid</name>
          
<name lang="german">Dichlorethansäure</name>
          
<name lang="spanish">Acido di cloroetanoico</name>
          
<scalar-value ref="n_analyte">1</scalar-value>
          
<scalar-value ref="m_analyte">0</scalar-value>
          
<scalar-value ref="pKa1_analyte">1.29</scalar-value>
          
<scalar-value ref="pKa2_analyte">20</scalar-value>
          
<scalar-value ref="pKa3_analyte">20</scalar-value>
        
</record>
        
<record>
          
<name lang="french">Acide éthanoique (acide acétique)</name>
          
<name lang="english">Ethanoic acid (acetic acid)</name>
          
<name lang="german">Ethansäure (Essigsäure)</name>
          
<name lang="spanish">Acido etanoico (acido acetico)</name>
          
<scalar-value ref="n_analyte">1</scalar-value>
          
<scalar-value ref="m_analyte">0</scalar-value>
          
<scalar-value ref="pKa1_analyte">4.756</scalar-value>
          
<scalar-value ref="pKa2_analyte">20</scalar-value>
          
<scalar-value ref="pKa3_analyte">20</scalar-value>
        
</record>
        
<record>
          
<name lang="french">Acide méthanoique (acide formique)</name>
          
<name lang="english">Methanoic acid (formic acid)</name>
          
<name lang="german">Methansäure (Ameisensäure)</name>
          
<name lang="spanish">Acido metanoico</name>
          
<scalar-value ref="n_analyte">1</scalar-value>
          
<scalar-value ref="m_analyte">0</scalar-value>
          
<scalar-value ref="pKa1_analyte">3.74</scalar-value>
          
<scalar-value ref="pKa2_analyte">20</scalar-value>
          
<scalar-value ref="pKa3_analyte">20</scalar-value>
        
</record>
        
<record>
          
<name lang="french">Acide salicylique</name>
          
<name lang="english">Salicylic acid</name>
          
<name lang="german">Salicylsäure</name>
          
<name lang="spanish">Acido salicílico</name>
          
<scalar-value ref="n_analyte">1</scalar-value>
          
<scalar-value ref="m_analyte">0</scalar-value>
          
<scalar-value ref="pKa1_analyte">2.75</scalar-value>
          
<scalar-value ref="pKa2_analyte">20</scalar-value>
          
<scalar-value ref="pKa3_analyte">20</scalar-value>
        
</record>
        
<record>
          
<name lang="french">Acide sulfurique</name>
          
<name lang="english">Sulfuric acid</name>
          
<name lang="german">Schwefelsäure</name>
          
<name lang="spanish">Acido sulfúrico</name>
          
<scalar-value ref="n_analyte">2</scalar-value>
          
<scalar-value ref="m_analyte">0</scalar-value>
          
<scalar-value ref="pKa1_analyte">0.34</scalar-value>
          
<scalar-value ref="pKa2_analyte">1.921</scalar-value>
          
<scalar-value ref="pKa3_analyte">20</scalar-value>
        
</record>
        
<record>
          
<name lang="french">Acide carbonique</name>
          
<name lang="english">Carbonic acid</name>
          
<name lang="german">Kohlensäure</name>
          
<name lang="spanish">Acido carbónico</name>
          
<scalar-value ref="n_analyte">2</scalar-value>
          
<scalar-value ref="m_analyte">0</scalar-value>
          
<scalar-value ref="pKa1_analyte">6.35</scalar-value>
          
<scalar-value ref="pKa2_analyte">10.30</scalar-value>
          
<scalar-value ref="pKa3_analyte">20</scalar-value>
        
</record>
        
<record>
          
<name lang="french">Hydroxyde d'ammonium</name>
          
<name lang="english">Ammonium hydroxide</name>
          
<name lang="german">Ammoniumhydroxid</name>
          
<name lang="spanish">Hidróxido de amonio</name>
          
<scalar-value ref="n_analyte">1</scalar-value>
          
<scalar-value ref="m_analyte">1</scalar-value>
          
<scalar-value ref="pKa1_analyte">9.24</scalar-value>
          
<scalar-value ref="pKa2_analyte">20</scalar-value>
          
<scalar-value ref="pKa3_analyte">20</scalar-value>
        
</record>
        
<record>
          
<name lang="french">Hydroxyde de sodium</name>
          
<name lang="english">Sodium hydroxide</name>
          
<name lang="german">Natriumhydroxid</name>
          
<name lang="spanish">Hidróxido de sodio</name>
          
<scalar-value ref="n_analyte">1</scalar-value>
          
<scalar-value ref="m_analyte">1</scalar-value>
          
<scalar-value ref="pKa1_analyte">14.8</scalar-value>
          
<scalar-value ref="pKa2_analyte">20</scalar-value>
          
<scalar-value ref="pKa3_analyte">20</scalar-value>
        
</record>
      
</database>
    
</section><section>
      
<title lang="french">Sélection du titrant</title>
      
<title lang="english">Selection of the titrant</title>
      
<title lang="german">Auswahl des Titranten</title>
      
<title lang="spanish">Selección de la especie que va a titular</title>
      
<database label="titrant">
        
<scalar increment="1" label="n_titrant" max="3" min="0" scale="1" state="normal"><name lang="french">Nombre de fonctions acides</name><name lang="english">Number of acid protons</name><name lang="german">Anzahl an Säureprotonen</name><name lang="spanish">Numero de funciones acidas</name><notes lang="french">
            
<p>3 fonctions acides au maximum pour cette simulation</p>
          
</notes><notes lang="english">
            
<p>In this simulation, up to 3 acid functions</p>
          
</notes><notes lang="german">
            
<p>Maximal bis zu 3 Säureprotonen für diese Simulation</p>
          
</notes><notes lang="spanish">
            
<p>Funciones acidas al máximo para esta simulación</p>
          
</notes><value>1</value></scalar>
        
<scalar increment="1" label="m_titrant" max="2" min="-2" scale="1" state="normal"><name lang="french">Charge de la forme la plus acide</name><name lang="english">Electric charge of the most acid form</name><name lang="german">Ladung der säurehaltigsten Form</name><name lang="spanish">Carga de la forma más acida</name><notes lang="french">
            
<p>de -2 à +2. Exemples : HCl : 0, NH4+ : +1, Na+ : +1.</p>
          
</notes><notes lang="english">
            
<p>from -2 to +2. Examples : HCl : 0, NH4+ : +1, Na+ : +1.</p>
          
</notes><notes lang="german">
            
<p>von -2 bis +2. Beispiele: HCl : 0, NH4+ : +1, Na+ : +1.</p>
          
</notes><notes lang="spanish">
            
<p>Desde -2 hasta +2. Ejemplos : HCl : 0, NH4+ : +1, Na+ : +1.</p>
          
</notes><value>0</value></scalar>
        
<scalar increment="0.1" label="pKa1_titrant" max="20" min="-10" scale="1" state="normal"><name lang="french">pKa1</name><name lang="english">pKa1</name><name lang="german">pKs1</name><name lang="spanish">pKa1</name><notes lang="french">
            
<p>pKa1 = - log Ka1</p>
          
</notes><notes lang="english">
            
<p>pKa1 = - log Ka1</p>
          
</notes><notes lang="german">
            
<p>pKs1 = - log Ks1</p>
          
</notes><notes lang="spanish">
            
<p>pKa1 = - log Ka1</p>
          
</notes><value>4</value></scalar>
        
<scalar increment="0.1" label="pKa2_titrant" max="20" min="-10" scale="1" state="normal"><name lang="french">pKa2</name><name lang="english">pKa2</name><name lang="german">pKs2</name><name lang="spanish">pKa2</name><notes lang="french">
            
<p>Pour un monoacide, un pKa d'au moins 20 permet mathématiquement
            d'ignorer les fonctions acides inexistantes. Le second pKa doit
            etre supérieur au premier, mais le programme ne vérifie pas si
            vous introduisez des valeurs aberrantes.
</p>
          
</notes><notes lang="english">
            
<p>For a monoacid, a pKa greater or equal to 20 permits to ignore
            mathematically the non-existent acidities. This second pKa must be
            greater than the first one, but the program does not check if you
            select chemically abnormal values.
</p>
          
</notes><notes lang="german">
            
<p>Bei Monosäuren erlaubt ein pKs von mindestens 20, die
            inexistenten Säureprotonen mathematisch zu ignorieren. Der zweite
            pKs muss größer sein als der erste, jedoch überprüft das Programm
            nicht ob chemisch anormale Werte eingegeben werden.
</p>
          
</notes><notes lang="spanish">
            
<p>Para un mono ácido, un pKa de mínimo 20 permite matemáticamente ignorar las funciones acidas inexistentes. El segundo pKa debe ser superior al primero, pero el programa no comprobara si inserta valores absurdos.</p>
          
</notes><value>20</value></scalar>
        
<scalar increment="0.1" label="pKa3_titrant" max="20" min="-10" scale="1" state="normal"><name lang="french">pKa3</name><name lang="english">pKa3</name><name lang="german">pKs3</name><name lang="spanish">pKa3</name><notes lang="french">
            
<p>Pour un monoacide ou un diacide, un pKa d'au moins 20 permet
            mathématiquement d'ignorer les fonctions acides inexistantes. Le
            troisième pKa doit etre supérieur aux deux premiers, mais le
            programme ne vérifie pas si vous introduisez des valeurs
            aberrantes.
</p>
          
</notes><notes lang="english">
            
<p>For a monoacid or a diacid, a pKa greater or equal to 20
            permits to ignore mathematically the non-existent acidities. This
            third pKa must be greater than the first and the second, but the
            program does not check if you select chemically abnormal
            values.
</p>
          
</notes><notes lang="german">
            
<p>Bei Mono- oder Disäuren erlaubt ein pKs von mindestens 20, die
            inexistenten Säureprotonen mathematisch zu ignorieren. Der dritte
            pKs muss größer sein als die zwei ersten, jedoch überprüft das
            Programm nicht ob chemisch anormale Werte eingegeben werden.
</p>
          
</notes><notes lang="spanish">
            
<p>Para un mono ácido o un di acido, un pKa de mínimo 20 permite matemáticamente ignorar las funciones acidas inexistentes. El tercero pKa debe ser superior a los dos primeros pero el programa no comprobara si inserta valores absurdos</p>
          
</notes><value>20</value></scalar>
        
<record>
          
<name lang="french">Hydroxyde de sodium</name>
          
<name lang="english">Sodium hydroxide</name>
          
<name lang="german">Natriumhydroxid</name>
          
<name lang="spanish">Hidróxido de sodio</name>
          
<scalar-value ref="n_titrant">1</scalar-value>
          
<scalar-value ref="m_titrant">1</scalar-value>
          
<scalar-value ref="pKa1_titrant">14.8</scalar-value>
          
<scalar-value ref="pKa2_titrant">20</scalar-value>
          
<scalar-value ref="pKa3_titrant">20</scalar-value>
        
</record>
        
<record>
          
<name lang="french">Hydroxyde d'ammonium</name>
          
<name lang="english">Ammonium hydroxide</name>
          
<name lang="german">Ammoniumhydroxid</name>
          
<name lang="spanish">Hidróxido de amonio</name>
          
<scalar-value ref="n_titrant">1</scalar-value>
          
<scalar-value ref="m_titrant">1</scalar-value>
          
<scalar-value ref="pKa1_titrant">9.24</scalar-value>
          
<scalar-value ref="pKa2_titrant">20</scalar-value>
          
<scalar-value ref="pKa3_titrant">20</scalar-value>
        
</record>
        
<record>
          
<name lang="french">Acide carbonique</name>
          
<name lang="english">Carbonic acid</name>
          
<name lang="german">Kohlensäure</name>
          
<name lang="spanish">Acido carbónico</name>
          
<scalar-value ref="n_titrant">2</scalar-value>
          
<scalar-value ref="m_titrant">0</scalar-value>
          
<scalar-value ref="pKa1_titrant">6.35</scalar-value>
          
<scalar-value ref="pKa2_titrant">10.30</scalar-value>
          
<scalar-value ref="pKa3_titrant">20</scalar-value>
        
</record>
        
<record>
          
<name lang="french">Acide chlorhydrique</name>
          
<name lang="english">Hydrochloric acid</name>
          
<name lang="german">Salzsäure</name>
          
<name lang="spanish">Acido clorhídrico</name>
          
<scalar-value ref="n_titrant">1</scalar-value>
          
<scalar-value ref="m_titrant">0</scalar-value>
          
<scalar-value ref="pKa1_titrant">-7</scalar-value>
          
<scalar-value ref="pKa2_titrant">20</scalar-value>
          
<scalar-value ref="pKa3_titrant">20</scalar-value>
        
</record>
        
<record>
          
<name lang="french">Acide citrique</name>
          
<name lang="english">Citric acid</name>
          
<name lang="german">Zitronensäure</name>
          
<name lang="spanish">Acido cítrico</name>
          
<scalar-value ref="n_titrant">3</scalar-value>
          
<scalar-value ref="m_titrant">0</scalar-value>
          
<scalar-value ref="pKa1_titrant">3.128</scalar-value>
          
<scalar-value ref="pKa2_titrant">4.761</scalar-value>
          
<scalar-value ref="pKa3_titrant">6.394</scalar-value>
        
</record>
        
<record>
          
<name lang="french">Acide dichloroéthanoique</name>
          
<name lang="english">Dichloroethanoic acid</name>
          
<name lang="german">Dichlorethansäure</name>
          
<name lang="spanish">Acido di cloroetanoico</name>
          
<scalar-value ref="n_titrant">1</scalar-value>
          
<scalar-value ref="m_titrant">0</scalar-value>
          
<scalar-value ref="pKa1_titrant">1.29</scalar-value>
          
<scalar-value ref="pKa2_titrant">20</scalar-value>
          
<scalar-value ref="pKa3_titrant">20</scalar-value>
        
</record>
        
<record>
          
<name lang="french">Acide éthanoique (acide acétique)</name>
          
<name lang="english">Ethanoic acid (acetic acid)</name>
          
<name lang="german">Ethansäure (Essigsäure)</name>
          
<name lang="spanish">Acido etanoico (acide acético)</name>
          
<scalar-value ref="n_titrant">1</scalar-value>
          
<scalar-value ref="m_titrant">0</scalar-value>
          
<scalar-value ref="pKa1_titrant">4.756</scalar-value>
          
<scalar-value ref="pKa2_titrant">20</scalar-value>
          
<scalar-value ref="pKa3_titrant">20</scalar-value>
        
</record>
        
<record>
          
<name lang="french">Acide méthanoique (acide formique)</name>
          
<name lang="english">Methanoic acid (formic acid)</name>
          
<name lang="german">Methansäure (Ameisensäure)</name>
          
<name lang="spanish">Acido metanoico (acido fórmico)</name>
          
<scalar-value ref="n_titrant">1</scalar-value>
          
<scalar-value ref="m_titrant">0</scalar-value>
          
<scalar-value ref="pKa1_titrant">3.74</scalar-value>
          
<scalar-value ref="pKa2_titrant">20</scalar-value>
          
<scalar-value ref="pKa3_titrant">20</scalar-value>
        
</record>
        
<record>
          
<name lang="french">Acide o-phosphorique</name>
          
<name lang="english">o-phosphoric acid</name>
          
<name lang="german">o-Phosphorsäure</name>
          
<name lang="spanish">Acido o-fosfórico</name>
          
<scalar-value ref="n_titrant">3</scalar-value>
          
<scalar-value ref="m_titrant">0</scalar-value>
          
<scalar-value ref="pKa1_titrant">2.124</scalar-value>
          
<scalar-value ref="pKa2_titrant">7.206</scalar-value>
          
<scalar-value ref="pKa3_titrant">12.658</scalar-value>
        
</record>
        
<record>
          
<name lang="french">Acide salicylique</name>
          
<name lang="english">Salicylic acid</name>
          
<name lang="german">Salisylsäure</name>
          
<name lang="spanish">Acido salicílico</name>
          
<scalar-value ref="n_titrant">1</scalar-value>
          
<scalar-value ref="m_titrant">0</scalar-value>
          
<scalar-value ref="pKa1_titrant">2.75</scalar-value>
          
<scalar-value ref="pKa2_titrant">20</scalar-value>
          
<scalar-value ref="pKa3_titrant">20</scalar-value>
        
</record>
        
<record>
          
<name lang="french">Acide sulfurique</name>
          
<name lang="english">Sulfuric acid</name>
          
<name lang="german">Schwefelsäure</name>
          
<name lang="spanish">Acido sulfúrico</name>
          
<scalar-value ref="n_titrant">2</scalar-value>
          
<scalar-value ref="m_titrant">0</scalar-value>
          
<scalar-value ref="pKa1_titrant">0.34</scalar-value>
          
<scalar-value ref="pKa2_titrant">1.921</scalar-value>
          
<scalar-value ref="pKa3_titrant">20</scalar-value>
        
</record>
      
</database>
    
</section><section>
      
<title lang="french">Concentrations et volumes</title>
      
<title lang="english">Concentrations and volumes</title>
      
<title lang="german">Konzentrationen und Volumen</title>
      
<title lang="spanish">Concentraciones y volúmenes</title>
      
<subsection>
        
<scalar increment="0.01" label="initial_conc_analyte" max="1" min="0.01" scale="1" state="normal" unit="mol / L"><name lang="french">Concentration initiale de l'espèce titrée
          (mol/L)
</name><name lang="english">Initial concentration of the analyte
          (mol/L)
</name><name lang="german">Anfangskonzentration der titrierten Form
          (mol/L)
</name><name lang="spanish">Concentración inicial de la especie titulada</name><value>0.1</value></scalar>
        
<scalar increment="1" label="initial_volume_analyte" max="50" min="1" scale="1" state="normal" unit="mL"><name lang="french">Volume initial de solution de l'espèce titrée
          (mL)
</name><name lang="english">Initial volume of the analyte (mL)</name><name lang="german">Anfangsvolumen der titrierten Form (mL)</name><name lang="spanish">Volumen inicial de la especie titulada (mL)</name><value>20</value></scalar>
      
</subsection>
      
<subsection>
        
<scalar increment="0.01" label="mother_conc_titrant" max="1" min="0.01" scale="1" state="normal" unit="mol / L"><name lang="french">Concentration initiale du titrant (mol/L)</name><name lang="english">Initial concentration of the titrant
          (mol/L)
</name><name lang="german">Anfangskonzentration des Titranten
          (mol/L)
</name><name lang="spanish">Concentración inicial de la especie que titula (mol/L)</name><value>0.1</value></scalar>
        
<scalar label="volume_min" scale="1" state="normal" unit="mL"><name lang="french">Volume initial du titrant (mL)</name><name lang="english">Initial volume of the titrant (mL)</name><name lang="german">Anfangsvolumen des Titranten (mL)</name><name lang="spanish">Volumen inicial de la especie que titula (mL)</name><notes lang="french">
            
<p>Usuellement, zéro</p>
          
</notes><notes lang="english">
            
<p>Usually, zero</p>
          
</notes><notes lang="german">
            
<p>Normalerweise, null</p>
          
</notes><notes lang="spanish">
            
<p>Normalmente, cero</p>
          
</notes><value>0</value></scalar>
      
</subsection>
      
<subsection>
        
<scalar increment="1" label="volume_dilution_water" max="50" min="0" scale="1" state="normal" unit="mL"><name lang="french">Volume de l'éventuelle eau de dilution
          (mL)
</name><name lang="english">Volume of the potential dilution water
          (mL)
</name><name lang="german">Volumen des eventuellen Verdünnungswasser
          (mL)
</name><name lang="spanish">Volumen de la eventual agua de dilución</name><notes lang="french">
            
<p>Usuellement, zéro</p>
          
</notes><notes lang="english">
            
<p>Usually, zero</p>
          
</notes><notes lang="german">
            
<p>Normalerweise, null</p>
          
</notes><notes lang="spanish">
            
<p>Normalmente, cero</p>
          
</notes><value>0</value></scalar>
      
</subsection>
    
</section><section>
      
<title lang="french">Paramètre pour le calcul</title>
      
<title lang="english">Parameter for the calculation</title>
      
<title lang="german">Parameter für die Rechnung</title>
      
<title lang="spanish">Parámetro para el calculo</title>
      
<point label="p1" state="hidden"><x1 label="x1">
          
<value>0</value>
        
</x1><x2 label="y1">
          
<value>0</value>
        
</x2><constraints>
          
<curve ref="advancement_2" />
        
</constraints></point>
      
<scalar increment="10" label="titration_steps" max="1000" min="10" scale="1" state="normal"><name lang="french">Nombre de valeurs intermédiaires pour le calcul
        (max 1000)
</name><name lang="english">Number of steps (max 1000)</name><name lang="german">Anzahl der Zwischenwerte für die Rechnung (max
        1000)
</name><name lang="spanish">Numero de valores intermediarios para el cálculo (max 1000)</name><value>100</value></scalar>
      
<scalar increment="0.25" label="end_point_factor" max="3" min="0.25" scale="1" state="normal"><name lang="french">Facteur multiplicateur pour fixer le volume final
        des courbes de titrage
</name><name lang="english">Multiplying factor to fix the final titrant
        volume for the curves
</name><name lang="german">Multiplikationsfaktor um das Endvolumen der
        Titrationskurven festzulegen
</name><name lang="spanish">Factor multiplicador para fijar el volumen final de las curvas de titulación</name><value>1.5</value></scalar>
    
</section><section>
      
<title lang="french">Points expérimentaux</title>
      
<title lang="english">Experimental data</title>
      
<title lang="german">Versuchspunkte</title>
      
<title lang="spanish">Puntos experimentales</title>
      
<matrix clear="yes" cols="2" label="user_curve_mat" load="yes" rows="64" save="yes" stripcol="no" striprow="yes" widget="normal">
        
<name />
        
<name lang="german">XXXXXX</name>
        
<name lang="spanish">XXXXXX</name>
        
<col>
          
<name lang="french">Abscisses (volumes de titrant)</name>
          
<name lang="english">X data (titrant volumes)</name>
          
<name lang="german">X-Achse (Titrantvolumen)</name>
          
<name lang="spanish">Valores en X (volúmenes del titulante)</name>
          
<value>0</value>
        
</col>
        
<col>
          
<name lang="french">Ordonnées (pH)</name>
          
<name lang="english">Y data (pH values)</name>
          
<name lang="german">Y-Achse (pH-Werte)</name>
          
<name lang="spanish">Valores en Y (pH)</name>
          
<value />
        
</col>
      
</matrix>
    
</section></parameters>
  
<compute>
    
<defdomain1d label="volume_titrant">
      
<name lang="french">Volume du titrant (mL)</name>
      
<name lang="english">Titrant volume (mL)</name>
      
<name lang="german">Titrantvolumen (mL)</name>
      
<name lang="spanish">Volumen del titulante (mL)</name>
      
<interval discretization="linear" steps="titration_steps">
        
<initialvalue>volume_min</initialvalue>
        
<finalvalue>end_point_factor * n_analyte * initial_conc_analyte *
        initial_volume_analyte / mother_conc_titrant / n_titrant
</finalvalue>
      
</interval>
    
</defdomain1d>
    
<implicitfunction label="ph" method="dichotomic">
      
<refdomain1d ref="volume_titrant" />
      
<unknowns>
        
<unknown label="pH">
          
<name>pH</name>
          
<name lang="english">pH</name>
          
<name lang="german">pH</name>
          
<name lang="spanish">pH</name>
          
<guess>0</guess>
          
<lowerbound>0</lowerbound>
          
<upperbound>14</upperbound>
        
</unknown>
      
</unknowns>
      
<equations>
        
<variable label="volume_equivalent">initial_conc_analyte *
        initial_volume_analyte / mother_conc_titrant / n_titrant
</variable>
        
<variable label="concentration_analyte">initial_conc_analyte *
        initial_volume_analyte./(initial_volume_analyte +
        volume_dilution_water + volume_titrant)
</variable>
        
<variable label="concentration_titrant">mother_conc_titrant *
        volume_titrant./(initial_volume_analyte + volume_dilution_water +
        volume_titrant)
</variable>
        
<variable label="advancement">volume_titrant./volume_equivalent</variable>
        
<variable label="advancement_max">end_point_factor *
        n_analyte
</variable>
        
<variable label="Ka1_analyte">10^(-pKa1_analyte)</variable>
        
<variable label="Ka2_analyte">10^(-pKa2_analyte)</variable>
        
<variable label="Ka3_analyte">10^(-pKa3_analyte)</variable>
        
<variable label="Ka1_titrant">10^(-pKa1_titrant)</variable>
        
<variable label="Ka2_titrant">10^(-pKa2_titrant)</variable>
        
<variable label="Ka3_titrant">10^(-pKa3_titrant)</variable>
        
<variable label="H">10.^(-pH)</variable>
        
<variable label="denominator_analyte">H + Ka1_analyte +
        (Ka1_analyte*Ka2_analyte./H) +
        (Ka1_analyte*Ka2_analyte*Ka3_analyte./H./H)
</variable>
        
<variable label="alpha3_analyte">H./denominator_analyte</variable>
        
<variable label="alpha2_analyte">Ka1_analyte./denominator_analyte</variable>
        
<variable label="alpha1_analyte">Ka1_analyte*Ka2_analyte./H./denominator_analyte</variable>
        
<variable label="alpha0_analyte">Ka1_analyte*Ka2_analyte*Ka3_analyte./H./H./denominator_analyte</variable>
        
<variable label="charge_analyte">concentration_analyte.*
        ((alpha3_analyte.*m_analyte) + (alpha2_analyte.*(m_analyte-1)) +
        (alpha1_analyte.*(m_analyte-2)) +
        (alpha0_analyte.*(m_analyte-3)))
</variable>
        
<variable label="denominator_titrant">H + Ka1_titrant +
        (Ka1_titrant*Ka2_titrant./H) +
        (Ka1_titrant*Ka2_titrant*Ka3_titrant./H./H)
</variable>
        
<variable label="alpha3_titrant">H./denominator_titrant</variable>
        
<variable label="alpha2_titrant">Ka1_titrant./denominator_titrant</variable>
        
<variable label="alpha1_titrant">Ka1_titrant*Ka2_titrant./H./denominator_titrant</variable>
        
<variable label="alpha0_titrant">Ka1_titrant*Ka2_titrant*Ka3_titrant./H./H./denominator_titrant</variable>
        
<variable label="charge_titrant">concentration_titrant.*
        ((alpha3_titrant.*m_titrant) + (alpha2_titrant.*(m_titrant-1)) +
        (alpha1_titrant.*(m_titrant-2)) +
        (alpha0_titrant.*(m_titrant-3)))
</variable>
        
<equation>H - (1e-14)./H + charge_analyte + charge_titrant</equation>
      
</equations>
      
<outputs>
        
<output label="alpha3">
          
<name>Hn A</name>
          
<name lang="english">Hn A</name>
          
<name lang="german">Hn S</name>
          
<name lang="spanish">Hn A</name>
          
<value>alpha3_analyte</value>
        
</output>
        
<output label="alpha2">
          
<name>Hn-1 A-</name>
          
<name lang="english">Hn-1 A-</name>
          
<name lang="german">Hn-1 S-</name>
          
<name lang="spanish">Hn-1 A-</name>
          
<value>alpha2_analyte</value>
        
</output>
        
<output label="alpha1">
          
<name>Hn-2 A=</name>
          
<name lang="english">Hn-2 A=</name>
          
<name lang="german">Hn-2 S=</name>
          
<name lang="spanish">Hn-2 A=</name>
          
<value>alpha1_analyte</value>
        
</output>
        
<output label="alpha0">
          
<name>Hn-3 A3-</name>
          
<name lang="english">Hn-3 A3-</name>
          
<name lang="german">Hn-3 S3-</name>
          
<name lang="spanish">Hn-3 A3-</name>
          
<value>alpha0_analyte</value>
        
</output>
      
</outputs>
    
</implicitfunction>
  
</compute>
  
<graphs>
    
<parametriccurve2d label="advancement_2">
      
<name lang="french">Avancement</name>
      
<name lang="english">Advancement</name>
      
<name lang="german">Fortschritt</name>
      
<name lang="spanish">Progresión</name>
      
<refdomain1d ref="volume_titrant" />
      
<x1 label="__1">
        
<name lang="french">Avancement</name>
        
<name lang="english">Advancement</name>
        
<name lang="german">Fortschritt</name>
        
<name lang="spanish">Progresión</name>
        
<value>advancement</value>
      
</x1>
      
<x2 label="__2">
        
<name lang="french">pH</name>
        
<name lang="english">pH</name>
        
<name lang="german">pH</name>
        
<name lang="spanish">pH</name>
        
<value>pH</value>
      
</x2>
    
</parametriccurve2d>
    
<parametriccurve2d label="user_curve">
      
<name lang="french">Points expérimentaux</name>
      
<name lang="english">Experimental data</name>
      
<name lang="german">Versuchspunkte</name>
      
<name lang="spanish">Puntos experimentales</name>
      
<x1>
        
<name />
        
<name lang="german" />
        
<name lang="spanish" />
        
<value>user_curve_mat(:,1)</value>
      
</x1>
      
<x2>
        
<name />
        
<name lang="german" />
        
<name lang="spanish" />
        
<value>user_curve_mat(:,2)</value>
      
</x2>
    
</parametriccurve2d>
  
</graphs>
  
<display>
    
<window splitx="1" splity="3">
      
<title lang="french">pH obtenu</title>
      
<title lang="english">pH</title>
      
<title lang="german">pH</title>
      
<title lang="spanish">pH logrado</title>
      
<axis2d colorbar="off" iso="no" legend="nw" position="left" type="cartesian" xmax="end_point_factor*n_analyte*volume_equivalent" xmin="volume_min" ymax="14" ymin="0">
        
<drawcurve2d color="blue" ref="pH" thickness="2" />
        
<drawcurve2d color="red" linetype="none" marker="triangle-up" ref="user_curve" thickness="1" />
      
</axis2d>
      
<axis2d colorbar="off" iso="no" position="left" type="cartesian" xmax="end_point_factor*n_analyte*volume_equivalent" xmin="volume_min" ymax="1" ymin="0">
        
<drawcurve2d color="cyan" ref="alpha3" thickness="2" />
        
<drawcurve2d color="blue" ref="alpha2" thickness="2" />
        
<drawcurve2d color="red" ref="alpha1" thickness="2" />
        
<drawcurve2d color="green" ref="alpha0" thickness="2" />
      
</axis2d>
      
<axis2d colorbar="off" iso="no" position="left" type="cartesian" xmax="advancement_max" xmin="0" ymax="14" ymin="0">
        
<drawcurve2d color="black" ref="advancement_2" thickness="1" />
        
<drawpoints ref="p1" />
      
</axis2d>
    
</window>
  
</display>
  
<save>
    
<file format="csv" href="essai.csv" labels="pKa1_analyte pKa2_analyte pKa3_analyte n_analyte m_analyte initial_volume_analyte initial_conc_analyte pKa1_titrant pKa2_titrant pKa3_titrant n_titrant m_titrant mother_conc_titrant pH volume_titrant advancement" />
  
</save>
</simulation>