New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Adding in coverage dependent effects to surface kinetics #2090
Commits on Jul 23, 2021
-
Adding in coverage parameters to SurfaceArrhenius
Adding coverage dependent parameters to surface arrhenius kinetics added in coverage dependence in kinetics model Adding _coverage_dependence to SurfaceArrhenius and SurfaceArrhenius Cython declarations adding variable names to coverage documentation and making it more readable Fixing the updated docstrings for coverage_dependence Adding in coverage_dependence to SurfaceArrhenius and SurfaceArrheniusBEP
Configuration menu - View commit details
-
Copy full SHA for e099db7 - Browse repository at this point
Copy the full SHA e099db7View commit details -
Use coverage parameters to modify the reaction rates
using coverage dependent parameters multiply kr by cov parameters moving cov_dep and co to the init WIP: Export cantera files with coverage dependent parameters make cov dict into cantera readable format for export WIP: Adding unittests to test cantera export Make sure units of coverage dependence are si
Configuration menu - View commit details
-
Copy full SHA for 21a4da7 - Browse repository at this point
Copy the full SHA 21a4da7View commit details -
Configuration menu - View commit details
-
Copy full SHA for 9cf4424 - Browse repository at this point
Copy the full SHA 9cf4424View commit details -
Configuration menu - View commit details
-
Copy full SHA for 548ce1c - Browse repository at this point
Copy the full SHA 548ce1cView commit details -
Adding in new unit tests to the solver surface test
test that coverage dependence is doing what it should be doing Richard: Fix some surface solver tests details. This is meant to represent CH3X, not HX. Doesn't make a difference to what we're testing, but better to be right.
Configuration menu - View commit details
-
Copy full SHA for 3494321 - Browse repository at this point
Copy the full SHA 3494321View commit details -
Configuration menu - View commit details
-
Copy full SHA for 18a1810 - Browse repository at this point
Copy the full SHA 18a1810View commit details -
Configuration menu - View commit details
-
Copy full SHA for bb2c693 - Browse repository at this point
Copy the full SHA bb2c693View commit details -
Configuration menu - View commit details
-
Copy full SHA for b0be206 - Browse repository at this point
Copy the full SHA b0be206View commit details -
Configuration menu - View commit details
-
Copy full SHA for a16a2be - Browse repository at this point
Copy the full SHA a16a2beView commit details -
Changing coverage dependence SMILES to species objects
Look for coverage_dependence attribute
Configuration menu - View commit details
-
Copy full SHA for 35c7b0b - Browse repository at this point
Copy the full SHA 35c7b0bView commit details -
Configuration menu - View commit details
-
Copy full SHA for a198243 - Browse repository at this point
Copy the full SHA a198243View commit details -
Configuration menu - View commit details
-
Copy full SHA for 2fcea33 - Browse repository at this point
Copy the full SHA 2fcea33View commit details -
Configuration menu - View commit details
-
Copy full SHA for f62cedf - Browse repository at this point
Copy the full SHA f62cedfView commit details -
Configuration menu - View commit details
-
Copy full SHA for b683d1b - Browse repository at this point
Copy the full SHA b683d1bView commit details -
Can read Coverage Dependent kinetics from Chemkin files
For now, only reactions with COV are turned into SurfaceArrhenius objects, all others are left as Arrhenius. I'm not quite sure what's happening around lines 467-473 (Emily's changes, I'm just committing them)
Configuration menu - View commit details
-
Copy full SHA for 268a3e6 - Browse repository at this point
Copy the full SHA 268a3e6View commit details -
Configuration menu - View commit details
-
Copy full SHA for 9cdd49b - Browse repository at this point
Copy the full SHA 9cdd49bView commit details -
Do not write coverage dependent parameters if coverage dependence is …
…turned off save_chemkin_file has coverage_dependence flag, which is passed on to write_kinetics_entry
Configuration menu - View commit details
-
Copy full SHA for 127d725 - Browse repository at this point
Copy the full SHA 127d725View commit details -
Configuration menu - View commit details
-
Copy full SHA for 1c2d51d - Browse repository at this point
Copy the full SHA 1c2d51dView commit details -
Turn on coverage dependence in the coverage-dependence solver tests.
This defaults to False if not specified as true. The fact that this wasn't noticed, tells us that the test isn't really testing that we do evaluate coverage-dependence correctly.
Configuration menu - View commit details
-
Copy full SHA for 884c4e5 - Browse repository at this point
Copy the full SHA 884c4e5View commit details -
Correcting ordering of COV parameters in Chemkin files.
Should be (a, m, E).
Configuration menu - View commit details
-
Copy full SHA for 93979ea - Browse repository at this point
Copy the full SHA 93979eaView commit details -
Chemkin reading COV: Do parameters in order a, m, E.
also, turning the forgotten 'J/mol' into Eunits !
Configuration menu - View commit details
-
Copy full SHA for 9bb42c1 - Browse repository at this point
Copy the full SHA 9bb42c1View commit details -
Configuration menu - View commit details
-
Copy full SHA for 9e17c6e - Browse repository at this point
Copy the full SHA 9e17c6eView commit details -
Chemkin reading COV parameters: should preserve case of species names.
If we're even going to bother writing this code we really ought to test it
Configuration menu - View commit details
-
Copy full SHA for fec8618 - Browse repository at this point
Copy the full SHA fec8618View commit details -
Put coverage-dependence paramaters in order a, m, E, consistently.
Dictionaries are order-preserving, and humans' brains are, so we'll have fewer bugs if we're consistent with ourselves and other software's conventions. Chemkin and Cantera use (a, m, E) ordering. Now we do, throughout.
Configuration menu - View commit details
-
Copy full SHA for e670cee - Browse repository at this point
Copy the full SHA e670ceeView commit details -
Chemkin reading COV parameters. Fixes for reading sticking coefficients.
If there's a STICK line before a COV line we can cope.
Configuration menu - View commit details
-
Copy full SHA for 27978dd - Browse repository at this point
Copy the full SHA 27978ddView commit details -
Chemkin COV writing: correct units for the E parameter
The E should be in the same units as Ea, which is kcal/mol. That's 4184 times smaller.
Configuration menu - View commit details
-
Copy full SHA for ad508c9 - Browse repository at this point
Copy the full SHA ad508c9View commit details -
update __repr__ string writing
do not write if the coverage dependence dictionary is empty
Configuration menu - View commit details
-
Copy full SHA for b12ded6 - Browse repository at this point
Copy the full SHA b12ded6View commit details -
Revert "Do not write coverage dependent parameters if coverage depend…
…ence is turned off" This reverts commit 7841f24. Had to manually tweak a few things to resolve conflicts. The point is to remove the extra code from the chemkin-writing methods. If we turn off coverage, the parameters should not be in the model. If the parameters are in the model, they should be written by chemkin.
Configuration menu - View commit details
-
Copy full SHA for dd5f119 - Browse repository at this point
Copy the full SHA dd5f119View commit details -
Chemkin writing coverage dependence: fix bugs
- An empty dictionary shouldn't be printed (even though it's not 'None') - We need sticking coefficients cov parameters to be in the right units too! (we previously fixed from J/mol to kcal/mol in one place, but not both)
Configuration menu - View commit details
-
Copy full SHA for 61f7c88 - Browse repository at this point
Copy the full SHA 61f7c88View commit details -
Chemkin writing coverage dependence: reduce code duplication
Protects us from bugs where we fix things in one place and not the other.
Configuration menu - View commit details
-
Copy full SHA for 78f87d8 - Browse repository at this point
Copy the full SHA 78f87d8View commit details -
Renaming apply_coverage_depndence_to_reaction to process_coverage_dep…
…endence. This better describes what it does. Also expanded docstring. Also removed it from INSIDE the apply_kinetics_to_reaction method and removed if from and elif block, so that it is duplicated in less code (but still called in the same way, I think)
Configuration menu - View commit details
-
Copy full SHA for c109911 - Browse repository at this point
Copy the full SHA c109911View commit details -
process_coverage_dependence now REMOVES parameters if turned off.
I'm still not very sure about the `coverage_dependence=False` settings, and what should be turned off by it.
Configuration menu - View commit details
-
Copy full SHA for 6494c17 - Browse repository at this point
Copy the full SHA 6494c17View commit details -
SurfaceReactor: Remove unused (and mutable) default arguments.
Putting dictionaries as a default argument is a famous gotcha https://docs.python-guide.org/writing/gotchas/ I wondered if it's being done on purpose for some efficiency reason, to share memory, but decided no. a risk of error, and is not needed anyway as we never initialize the object with those parameters anyway.
Configuration menu - View commit details
-
Copy full SHA for bc99a4e - Browse repository at this point
Copy the full SHA bc99a4eView commit details -
CovDep test: report timing of the simulations.
I'm hoping to speed it up later.
Configuration menu - View commit details
-
Copy full SHA for 7eda4c3 - Browse repository at this point
Copy the full SHA 7eda4c3View commit details -
Configuration menu - View commit details
-
Copy full SHA for 6dee145 - Browse repository at this point
Copy the full SHA 6dee145View commit details -
Configuration menu - View commit details
-
Copy full SHA for 7425b4e - Browse repository at this point
Copy the full SHA 7425b4eView commit details -
CovDep test: change T, and plot coverage.
At 600 K the eqm coverage is much higher, so you get a more noticeable coverage dependence. By plotting coverage instead of concentration it's easier to see what's happening.
Configuration menu - View commit details
-
Copy full SHA for bbbba5e - Browse repository at this point
Copy the full SHA bbbba5eView commit details -
CovDep Test: make the surface reactor test slower.
Add a bunch of redundant species and reactions, to slow it down a bit, for benchmarking purposes. Simulation took 3.550e+00 seconds in rmgpy.solver.surfaceTest.SurfaceReactorCheck.test_solve_h2_coverage_dependence
Configuration menu - View commit details
-
Copy full SHA for 4670244 - Browse repository at this point
Copy the full SHA 4670244View commit details -
Refactor the coverage dependence calculations in surface solver.
Main goal was to optimize everything happening inside the loops in the "residual" function (which gets called a lot). Simulation took 4.541e-01 seconds in rmgpy.solver.surfaceTest.SurfaceReactorCheck.test_solve_h2_coverage_dependence (previous run was 3.550e+00, so we're about 8x faster)
Configuration menu - View commit details
-
Copy full SHA for cf8146b - Browse repository at this point
Copy the full SHA cf8146bView commit details -
CovDep test: stop plotting the graphs.
These are helpful for manual inspection and helped me confirm it's working, but they're not needed for the automated test suite or continuous integration.
Configuration menu - View commit details
-
Copy full SHA for fa20dea - Browse repository at this point
Copy the full SHA fa20deaView commit details -
added check that covdep makes a difference
changed CH3 coverage unittest to run an additional simulation without coverage dependence. the solution arrays from each are compared.
Configuration menu - View commit details
-
Copy full SHA for a00934b - Browse repository at this point
Copy the full SHA a00934bView commit details -
updated documentation with coverage dependence
added instructions on input file construction and updating the database.
Configuration menu - View commit details
-
Copy full SHA for 99ab281 - Browse repository at this point
Copy the full SHA 99ab281View commit details -
Configuration menu - View commit details
-
Copy full SHA for 5918981 - Browse repository at this point
Copy the full SHA 5918981View commit details