Seed Mechanisms revisited
This used to be issue #147. It is now a 'pull request' - but I'm not actually requesting you pull it in to the master branch just yet.. wait until it's finished :-) See http://help.github.com/pull-requests/ for details about pull requests.
There is a new 'seedmech' branch for us to implement the changes to seed mechanism behaviour that we discussed in the meeting a couple of weeks ago. You can follow its progress here in this "pull request".
For the record, this is what we're aiming at, based on the meeting we had:
| Name | Treatment | Pdep? | React with core | Prunable? |
|---|---|---|---|---|
| Seed Mechanism species specified in condition file | Included in core at start | k(T,P) as specified | Cross-react at start | No |
| Seed Mechanism (species not in condition file) | Placed on edge at start AND added to chemkin files. | k(T,P) as specified | React only when included in core | No |
| Reaction Library | Placed on edge. | k(T,P) or k_inf chosen by user in condition file | React only when included in core | Yes |
| Kinetics Library | Used if RMG predicts reaction exists via family template. | k_inf | React only when included in core | Yes |
So far:
- seed mechanisms are now read in to the edge not the core,
- seed mechanisms are included in the chemkin files even though they're on the edge.
- if a reaction is in a seed mechanism, be it with pressure dependence or otherwise, then it is removed from any PDep networks before they are sent to the ODE solver, or printed in the chemkin files
Still to do:
- checking to see if I broke restart
- changing the pressure-dependent behaviour: use FAME to fill in gaps in P-Dep networks, but the seed mechanism to over-ride specified rates. (work in progress)
- ... add more below!
Please feel free to contribute :-)
git fetch official
git checkout -b seedmech official/seedmech
I'm getting slightly bogged down trying to properly read PLOG rates from reaction libraries (and I have no idea about Chebyshevs).
The above block of commits (e422ef424c508c06a630c67c8554f1e0f6fa59b2 ... f777cb45357b74c9058f55ca923249dace5d9f3a ) are all for converting the Glarborg seed mechanism / reaction library into PLOG format. Unfortunately this format cannot yet be read succesfully, but I think this conversion is now complete. thanks to @connie for the help.
I'm not sure this is going to work...
I think neither the ODE solver code (JDAS.java) nor the convergence checking code (appendUnreactedSpeciesStatus in ReactionSystem.java) are set up to handle Troe, Lindemann, or 3rd Body reactions on the edge, so the fluxes are not calculated correctly. After yet another day it's looking increasingly hard to fix, and I'm wondering if it's worth it.