catmap icon indicating copy to clipboard operation
catmap copied to clipboard

Improve handling of "trivial solutions"

Open ajmedford opened this issue 8 years ago • 0 comments

It is common for the rate equations to have a "trivial solution" where a zero value for one coverage leads to a valid steady-state solution regardless of the values of other coverages (this is typically a symptom of an unphysical or incomplete reaction mechanism). The system will have other, non-trivial, solutions, but the current solver is usually unable to find them. There are a few remedies here, in order of least to most work:

  1. add a "check_trivial_solutions" function which either runs automatically, or perhaps if some flag is set to true. The function could run once before the mapper starts and iterate through trial solutions of [0,1,1,...,1], [1,0,1,...,1],[1,1,0,...,1], etc. and see if any of them are valid. If so, CatMAP can throw an error and alert the user that a trivial solution has been detected when the coverage of adsorbate X is 0.

  2. add a tutorial discussing when and why trivial solutions occur, and how to fix them.

  3. implement a more robust solver that is capable of avoiding trivial solutions.

ajmedford avatar Feb 11 '16 14:02 ajmedford