ReactMiCP is a reactive transport simulator for variable porosity problem
SpecMiCP is a speciation solver
ReactMiCP is a reactive transport simulator for variable porosity problem
SpecMiCP is a speciation solver
Commit | Author | Details | Committed | ||||
---|---|---|---|---|---|---|---|
4b4cc27e3ddb | fabien | Add access to the logger in the cython module | Apr 10 2015 | ||||
9c778f32ba82 | fabien | Add helper function to initialize the solver | Apr 10 2015 | ||||
72b4f0f12aa9 | fabien | Minor fixed in the main CMakeLists | Apr 10 2015 | ||||
307fe9844151 | fabien | lots of minor fixes and documentation in the cython module | Apr 10 2015 | ||||
698bdbf6176e | fabien | Solution can return the vector of main solution | Apr 10 2015 | ||||
901e398cf5eb | fabien | Remove cython module using the old ReducedSystem | Apr 8 2015 | ||||
24b3557bdcb5 | fabien | First executable commit of the cython module | Apr 8 2015 | ||||
ffb470e98818 | fabien | correct function naming in micpsolver structs | Apr 8 2015 | ||||
1bcfe70f1489 | fabien | continue the cython implementation | Apr 8 2015 | ||||
824f90062e79 | fabien | Add helper meber functions | Apr 8 2015 | ||||
0510c2d1f2b1 | fabien | Add member function to set options in MiCPSolverOptions | Apr 8 2015 | ||||
4787af2cb2cb | fabien | Fixes the eigen include | Apr 8 2015 | ||||
037e16710e65 | fabien | Start updating the cython module for specmicp | Apr 6 2015 | ||||
e9e13c1a1fe3 | fabien | Include two cmake modules for cython | Apr 6 2015 | ||||
4cf2a40df164 | fabien | Reader : Move implementation details into the cpp file | Apr 6 2015 |
SpecMiCP is a speciation solver to find the equilibrium state of a chemical system. The system is based on a mixed complementarity formulation of the equilibrium condition for minerals.
For a mineral with volume fraction Sm, the equilibrium condition is :
Sm >= 0, -log(IAPm/K) >= 0, -Sm*log(IAPm/K) = 0
where IAPm is the ion activity product and K the equilibrium constant. This condition is reformulated using [C-function][1] and the system is solved using a semismooth method.
SpecMiCP is not (yet) a program but a set of libraries that can be used to solve specific problems.
The following modules are already available :
The micpsolver and odeint modules can be use independantly.
Examples of use are provided in the examples directory.
SpecMiCP is developped by F. Georget (fabieng aT princeton DoT edu). It is part of my PhD work. The purpose of the PhD is to develop a reactive transport model to model the coupling between hydration, drying and carbonation in cement paste.
References : F. Georget, J. H. Prévost, and R. J. Vanderbei. A speciation solver for cement paste modeling and the semismooth Newton method . Cement and Concrete Research, 68(0):139--147, 2015.
[1] Finite-Dimensional Variational Inequalities and Complementarity Problems, Facchinei and Pang, Springer, 2003