[en] Geochemical and reactive transport modelling are essential tools in hydrogeology. They help to identify and assess geochemical processes occurring in applications such as groundwater contamination, water-rock interactions and geologic carbon sequestration. In this thesis we present methods for mixing and speciation calculations to be used for both interpretation of hydrochemical data and numerical modelling. The first method presented allows solving geochemical speciation using redundant information, while acknowledging errors in data. Traditional speciation algorithms use a fixed number of data and equilibrium assumptions to calculate the concentration of the species present in a chemical system. We demonstrate that using redundant data (i.e., data or assumptions that exceed the minimum required and therefore are not strictly necessary) can improve speciation results by reducing estimation errors. In fact, we show that speciation errors decrease when increasing the number of redundant data. The second method presented allows calculating mixing proportions of a number of end-members in a water sample from uncertain chemical data. Traditional methods for evaluating mixing ratios require the use of conservative tracers, which severely limits their applicability. The novelty of the method lies on the possibility of imposing equilibrium conditions on the mixture, while acknowledging kinetic reactions, which naturally leads to quantification of reactions. We applied the method to a freshwater-saltwater mixing problem in a set of samples collected by Sanz (2007), where we also characterized carbonate dissolution/precipitation and the production/consumption of CO2. These methods have been implemented in an Object-Oriented library called "CHEPROO++". This library can be used for hydrogeochemical calculations such as mixing waters linked to mass balance programs, which allows extending conservative transport simulators to solve reactive transport. One peculiarity of CHEPROO++ is the possibility of defining components decoupling constant activity species (CAS) such as, for example, pure equilibrium minerals or water (if the solution is sufficiently diluted). CHEPROO++ treats CAS as primary species. Decoupling CAS can be useful for speciation calculations because it allows reducing the system to be solved iteratively. To check if decoupling CAS is advantageous, we applied the speciation algorithm that decouples CAS to a reactive transport application. In particular we used this speciation algorithm for the chemical step of the Sequential Iteration Approach for reactive transport modelling. We compared the proposed algorithm with the traditional method, which does not decouple CAS, on a onedimensional domain where calcite is dissolving in equilibrium. Results show that decoupling CAS can decrease the number of iterations necessary for transport and chemistry calculations in case of equilibrium dissolution.

[es] El transporte reactivo y la modelación geoquímica son herramientas necesarias en hidrogeología, porque ayudan a identificar y cuantificar procesos geoquímicos que ocurren en diferentes aplicaciones como contaminación de aguas subterráneas, interacción agua-roca y secuestro geológico de CO2. En estas tesis presentamos métodos para cálculos de mezcla y especiación para interpretación de datos hidrogeoquímicos y modelación numérica. El primer método que presentamos permite resolver la especiación geoquímica con información redundante, y permite definir errores en los datos. Los algoritmos tradicionales de especiación utilizan un número fijo de datos y condiciones de equilibrio para calcular las concentraciones de las especies de un sistema químico. Con este método, demostramos que el uso de datos redundantes (p.ej. datos o hipótesis que exceden el mínimo requerido, y por tanto no son estrictamente necesarios) puede mejorar los resultados de la especiación reduciendo los errores de estimación. De hecho, mostramos como los errores de especiación disminuyen aumentando el número de datos redundantes. El segundo método que presentamos permite calcular proporciones de mezcla de miembros extremo en una muestra a partir de datos químicos inciertos. Los métodos de mezcla tradicionales utilizan trazadores conservativos, y esto limita mucho sus aplicabilidad. La novedad de este método está en la posibilidad de imponer condiciones de equilibrio y considerar reacciones cinéticas, que naturalmente permiten cuantificar reacciones. Hemos aplicado el método a unas muestras representativas de mezcla entre agua dulce y agua salada tomadas por Sanz (2007), en las que también hemos caracterizado disolución/precipitación de carbonatos y producción/consumo de CO2. Estos métodos han sido implementados en una librería ("CHEPROO++") usando el paradigma de programación orientada a objetos. Este módulo se puede utilizar para cálculos hidrogeoquímicos como mezclas de agua si se acopla a programas de balance de masa, y también puede extender programas de transporte conservativo para resolver transporte reactivo. Una peculiaridad de CHEPROO++ es la posibilidad de definir componentes desacoplando las especies de actividad constante (CAS) como, por ejemplo, minerales puros en equilibrio o agua (si la solución está suficientemente diluida). CHEPROO++ considera CAS como especies primarias. El desacople de CAS puede ser útil para la especiación porque permite reducir el tamaño del sistema que se tiene que resolver iterativamente. Para comprobar que desacoplar CAS es una ventaja, hemos aplicado el algoritmo de especiación que desacopla CAS a una aplicación de transporte reactivo. En particular, lo hemos utilizado para el paso químico del Sequential Iteration Approach, uno de los algoritmos para transporte reactivo. Hemos comparado el algoritmo propuesto con el tradicional, que no desacopla CAS, en un dominio unidimensional donde la calcita está disolviendo en equilibrio. Los resultados muestran que desacoplar CAS puede ayudar a reducir el número de iteraciones necesarias para el transporte y para la química en el caso de disolución en equilibrio