Skip to content
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

Fix chemkin file duplicate flags #1856

Open
wants to merge 5 commits into
base: main
Choose a base branch
from
Open

Fix chemkin file duplicate flags #1856

wants to merge 5 commits into from

Conversation

rwest
Copy link
Member

@rwest rwest commented Dec 30, 2019

Motivation or Problem 1

#1823 and #1336 describe problems with Chemkin files having unmarked duplicate reactions, which then causes problems in Cantera.
The very first example in #1336 I can't explain, but nobody can reproduce that behavior anyway.

All the other examples have the property that either the reactants or the products are in a different order., eg. one reaction is A + B = C + D and the undetected duplicate is either A + B = D + C or B + A = C + D.
The function chemkin.mark_duplicate_reaction was not sorting the reactants or products before comparing the lists.

Description of Changes 1

The main change is sorting the reactants and products before comparing them.
This should address #1823 and #1336.

But there's another duplicate flag problem addressed here too.

Motivation or Problem 2

The reaction library NOx2018 has the reaction HCCO + OH <=> HCOH + CO described as three duplicate reactions:

entry(
    index = 461,
    label = "HCCO + OH <=> HCOH + CO",
    degeneracy = 1,
    duplicate = True,
    kinetics = PDepArrhenius(
        pressures = ([1, 10, 100], 'atm'),
        arrhenius = [
            Arrhenius(A=(3e+16, 'cm^3/(mol*s)'), n=-0.935, Ea=(659, 'cal/mol'), T0=(1, 'K')),
            Arrhenius(
                A = (1.1e+18, 'cm^3/(mol*s)'),
                n = -1.392,
                Ea = (1395, 'cal/mol'),
                T0 = (1, 'K'),
            ),
            Arrhenius(
                A = (3.2e+18, 'cm^3/(mol*s)'),
                n = -1.523,
                Ea = (1627, 'cal/mol'),
                T0 = (1, 'K'),
            ),
        ],
    ),
)

entry(
    index = 462,
    label = "HCCO + OH <=> HCOH + CO",
    degeneracy = 1,
    duplicate = True,
    kinetics = PDepArrhenius(
        pressures = ([1, 10, 100], 'atm'),
        arrhenius = [
            Arrhenius(
                A = (8.7e+19, 'cm^3/(mol*s)'),
                n = -1.792,
                Ea = (5994, 'cal/mol'),
                T0 = (1, 'K'),
            ),
            Arrhenius(
                A = (3.5e+22, 'cm^3/(mol*s)'),
                n = -2.475,
                Ea = (9163, 'cal/mol'),
                T0 = (1, 'K'),
            ),
            Arrhenius(
                A = (1.3e+24, 'cm^3/(mol*s)'),
                n = -2.902,
                Ea = (10522, 'cal/mol'),
                T0 = (1, 'K'),
            ),
        ],
    ),
)

entry(
    index = 463,
    label = "HCCO + OH <=> HCOH + CO",
    degeneracy = 1,
    duplicate = True,
    kinetics = Arrhenius(A=(2.9e+12, 'cm^3/(mol*s)'), n=0.37, Ea=(-24, 'cal/mol'), T0=(1, 'K')),
)

I think this in accurate representation of the mess in the published Chemkin file:

HCCO+OH=HCOH+CO	                     3.0E16  -0.935     659 ! 1 atm
PLOG / 1                             3.0E16  -0.935     659/ !refit to avoid convergence problems
!PLOG / 1                             2.8E13   0.090     -20/
PLOG / 10                            1.1E18  -1.392    1395/
!PLOG / 10                            5.7E12   0.310    -232/
PLOG / 100                           3.2E18   -1.523   1627/
!PLOG / 100                           3.8E13   0.050      70/
! Xiong et al., Combust. Flame 161 (2014) 885�897
! assuming 3-HCOH=1-HCOH=HCOH
DUPLICATE
HCCO+OH=HCOH+CO		             8.7E19  -1.792    5994 ! 1 atm 
PLOG / 1                             8.7E19  -1.792    5994/ !Average (max) fitting error: 0.7% (3.8%) over T of 250--3000 [K] 
!PLOG / 1                            -1.4E15  -0.280   10792/
PLOG / 10                            3.5E22  -2.475    9163/ !Average (max) fitting error: 0.8% (3.2%) over T of 400--3000 [K] 
!PLOG / 10                           -2.9E11   0.720    5000/
PLOG / 100                           1.3E24   -2.902  10522/     !Average (max) fitting error: 0.9% (3.6%) over T of 400--3000 [K] 
!PLOG / 100                          -6.8E13   0.100   10302/
! Xiong et al., Combust. Flame 161 (2014) 885�897
! assuming 3-HCOH=1-HCOH=HCOH
DUPLICATE
!
HCCO+OH=HCOH+CO	                     2.9E12   0.370     -24	
! Xiong et al., Combust. Flame 161 (2014) 885�897
! assuming 3-HCOH=1-HCOH=HCOH
DUPLICATE

But the algorithm to detect and remove un-necessary DUPLICATE markers is over-zealous.
Because non-pdep and pdep reactions usually do not need to be marked as duplicates, it removes the duplicate markers. eg.

Adding species HCOH(44) to model core
Warning: Marked reaction OH(20) + HCCO(67) <=> CO(11) + HCOH(44) as not duplicate because of mixed pressure dependence for saving to Chemkin file.

However, there are two pdep reactions, and so the marker should remain.

Description of Changes 2

It now just logs a warning that the DUPLICATE flag may be redundant, but leaves it in place. Hopefully these are only marked as duplicates appropriately anyway.

Testing

I ran the existing unit tests. I'm currently re-building a large model that revealed these errors. I will know soon whether they went away.

@codecov
Copy link

codecov bot commented Dec 30, 2019

Codecov Report

All modified and coverable lines are covered by tests ✅

Comparison is base (8ba4c0d) 55.32% compared to head (186a20e) 55.32%.
Report is 102 commits behind head on main.

Additional details and impacted files
@@           Coverage Diff           @@
##             main    #1856   +/-   ##
=======================================
  Coverage   55.32%   55.32%           
=======================================
  Files         125      125           
  Lines       37139    37139           
=======================================
  Hits        20547    20547           
  Misses      16592    16592           

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

@rwest
Copy link
Member Author

rwest commented Dec 30, 2019

Just built a model using these commits, which resulted in a declared duplicate not being found:

***********************************************************************
CanteraError thrown by Kinetics::checkDuplicates:
No duplicate found for declared duplicate reaction number 6969 (CH3(14) + H(16) <=> CH2(39) + H2(10))
***********************************************************************

I think this is because the reaction CH3 + OH <=> CH2(S) + H2O in the reaction library NOx2018 is incorrectly labeled as a duplicate. If I'm right then perhaps the database tests should be updated to check for incorrect duplicate labels in reaction families.

@rwest
Copy link
Member Author

rwest commented Dec 31, 2019

The problem with things being declared as duplicates that aren't, was indeed an error in the NOx2018 library. This is addressed in ReactionMechanismGenerator/RMG-database#377 but we should probably still add checks for this type of error to the automated database tests.

@rwest
Copy link
Member Author

rwest commented Jan 2, 2020

Note that although I think this fixes a problem that we had in identifying the duplicate reactions and labeling them as such for valid chemkin files, it does not address the question as to why we were making two such reactions in the first place. That might require more investigation.

@Nora-Khalil
Copy link
Contributor

When using ck2cti, I get this error of unmarked duplicate reactions but have only found error warning on reactions of the following format:
A(+M)=B(+M)
A + A = B + B

These two reactions will be flagged as unmarked duplicates, and will have to be manually changed before the ck2cti command runs successfully.

@rwest
Copy link
Member Author

rwest commented Mar 2, 2023

How does it behave in the latest ck2yaml? Same?

@Nora-Khalil
Copy link
Contributor

Haven't tried that, but can try it now

@Nora-Khalil
Copy link
Contributor

Nora-Khalil commented Mar 2, 2023

Was trying to use ck2cti on a chemkin file for a halocarbon (CH2FCHF2). This mechanism has the following two reactions included in it:

`S(879)+S(879)(+M)=S(878)+S(878)(+M) 1.000e+00 0.000 0.000
TCHEB/ 300.000 2500.000 /
PCHEB/ 0.010 98.692 /
CHEB/ 6 4/
CHEB/ -3.446e+01 -3.026e-01 -1.548e-01 -4.369e-02 /
CHEB/ 3.447e+01 2.739e-01 1.283e-01 2.533e-02 /
CHEB/ 2.163e-01 1.447e-02 1.373e-02 9.367e-03 /
CHEB/ 3.745e-02 -2.493e-02 -9.297e-03 4.958e-04 /
CHEB/ 2.226e-02 9.356e-03 3.418e-03 -5.336e-05 /
CHEB/ 1.519e-02 1.470e-02 7.149e-03 1.632e-03 /

S(878)(+M)=S(879)(+M) 1.000e+00 0.000 0.000
TCHEB/ 300.000 2500.000 /
PCHEB/ 0.010 98.692 /
CHEB/ 6 4/
CHEB/ -5.464e+00 4.746e-01 -6.403e-02 2.979e-03 /
CHEB/ 1.325e+01 7.710e-01 -7.804e-02 -2.927e-03 /
CHEB/ -4.308e-01 4.182e-01 -1.665e-03 -8.906e-03 /
CHEB/ -2.788e-01 1.425e-01 2.650e-02 -2.471e-03 /
CHEB/ -1.261e-01 1.605e-02 1.555e-02 3.929e-03 /
CHEB/ -4.226e-02 -1.519e-02 8.593e-04 3.584e-03 /`

Note that RMG had not marked these as duplicate reactions. I had previously been converting the files while on David Farina's halocarbon combustion branch. When running the ck2cti command, I got multiple errors like this one:

Encountered unmarked duplicate reaction [unmarked reaction] (See lines #### and #### of the input file.).

This error almost always pertains to pressure dependent reactions in the form A+B(+M)=B+C(+M) or A(+M)=B+C(+M), with the two unmarked reactions having the same exact equation but different rates. A year ago, I created a script that handles these errors, adding in DUPLICATES where needed in the file. But lately, I've been running into an error with unmarked duplicates in the form A(+M)=B(+M) & A+A=B+B, with the error message as (for this example):

*********************************************************************** InputFileError thrown by Kinetics::checkDuplicates: Undeclared duplicate reactions detected: Reaction 1901: S(878) <=> S(879) Reaction 1897: 2 S(879) <=> 2 S(878) ***********************************************************************

When running the ck2yaml command, NO errors like Encountered unmarked duplicate reaction [unmarked reaction] (See lines #### and #### of the input file.). are produced, but it still catches on the second error I mentioned. Behavior is the same when I do the same process with my RMG-Py switched to RMG-Py main instead of David's branch.

same_dir_match = (reaction1.reactants == reaction2.reactants and reaction1.products == reaction2.products)
opposite_dir_match = (reaction1.products == reaction2.reactants and reaction1.reactants == reaction2.products)
same_dir_match = (sorted(reaction1.reactants) == sorted(reaction2.reactants) and sorted(reaction1.products) == sorted(reaction2.products))
opposite_dir_match = (sorted(reaction1.products) == sorted(reaction2.reactants) and sorted(reaction1.reactants) == sorted(reaction2.products))
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

There may need to be an edit here to catch errors like
InputFileError thrown by Kinetics::checkDuplicates: Undeclared duplicate reactions detected: Reaction ####: A <=> A Reaction ####: 2 A <=> 2 B

that results when you use either the ck2cti or ck2yaml.

@Nora-Khalil Nora-Khalil self-assigned this Mar 2, 2023
@github-actions
Copy link

This pull request is being automatically marked as stale because it has not received any interaction in the last 90 days. Please leave a comment if this is still a relevant pull request, otherwise it will automatically be closed in 30 days.

@github-actions github-actions bot added the stale stale issue/PR as determined by actions bot label Jun 21, 2023
@rwest rwest changed the base branch from master to main July 22, 2023 04:32
@github-actions
Copy link

Regression Testing Results

==> test/regression-diff/liquid_oxidation-edge.log <==
Original model has 202 species.
Test model has 202 species.✅
Original model has 1610 reactions.
Test model has 1610 reactions.✅

Non-identical kinetics! ❌
original:
rxn: CCCCCO[O](103) + CC(CC(C)OO)O[O](104) <=> oxygen(1) + CCCCC[O](128) + CC([O])CC(C)OO(127) origin: Peroxyl_Disproportionation
tested:
rxn: CCCCCO[O](104) + CC(CC(C)OO)O[O](103) <=> oxygen(1) + CCCCC[O](127) + CC([O])CC(C)OO(129) origin: Peroxyl_Disproportionation

k(1bar) 300K 400K 500K 600K 800K 1000K 1500K 2000K
k(T): 3.52 4.27 4.71 5.01 5.39 5.61 5.91 6.06
k(T): 7.79 7.46 7.21 7.00 6.67 6.41 5.94 5.60

kinetics: Arrhenius(A=(3.2e+12,'cm^3/(mol*s)'), n=0, Ea=(4.096,'kcal/mol'), T0=(1,'K'), comment="""Estimated from node Root_Ext-5R-R_7R!H->C_N-7C-inRing_Ext-5R-R""")
kinetics: Arrhenius(A=(3.18266e+20,'cm^3/(mol*s)'), n=-2.694, Ea=(0.053,'kcal/mol'), T0=(1,'K'), comment="""Estimated from node Root_Ext-5R-R_7R!H->C_N-7C-inRing Ea raised from 0.0 to 0.2 kJ/mol to match endothermicity of reaction.""")
kinetics: Estimated from node Root_Ext-5R-R_7R!H->C_N-7C-inRing_Ext-5R-R
kinetics: Estimated from node Root_Ext-5R-R_7R!H->C_N-7C-inRing
Ea raised from 0.0 to 0.2 kJ/mol to match endothermicity of reaction.

==> test/regression-diff/nitrogen-core.log <==
Original model has 41 species.
Test model has 41 species.✅
Original model has 360 reactions.

The original model has 1 reactions that the tested model does not have. ❌
rxn: HNO(48) + HCO(13) <=> NO(38) + CH2O(18) origin: H_Abstraction

==> test/regression-diff/nitrogen-edge.log <==
Original model has 132 species.
Test model has 132 species.✅
Original model has 997 reactions.

Non-identical thermo! ❌
original: O1[C]=N1
tested: O1[C]=N1

Hf(300K) S(300K) Cp(300K) Cp(400K) Cp(500K) Cp(600K) Cp(800K) Cp(1000K) Cp(1500K)
116.46 53.90 11.62 12.71 13.49 13.96 14.14 13.85 13.58
141.64 58.66 12.26 12.27 12.09 11.96 12.26 12.72 12.15

thermo: Thermo group additivity estimation: group(O2s-CdN3d) + group(N3d-OCd) + group(Cd-HN3dO) + ring(Cyclopropene) + radical(CdJ-NdO)
thermo: Thermo group additivity estimation: group(O2s-CdN3d) + group(N3d-OCd) + group(Cd-HN3dO) + ring(oxirene) + radical(CdJ-NdO)
The original model has 2 reactions that the tested model does not have. ❌
rxn: HNO(48) + HCO(13) <=> NO(38) + CH2O(18) origin: H_Abstraction
rxn: HON(T)(83) + HCO(13) <=> NO(38) + CH2O(18) origin: Disproportionation

Non-identical kinetics! ❌
original:
rxn: NCO(66) <=> O1[C]=N1(126) origin: Intra_R_Add_Endocyclic
tested:
rxn: NCO(66) <=> O1[C]=N1(126) origin: Intra_R_Add_Endocyclic

k(1bar) 300K 400K 500K 600K 800K 1000K 1500K 2000K
k(T): -49.54 -33.65 -24.16 -17.85 -10.01 -5.35 0.80 3.82
k(T): -66.25 -46.19 -34.19 -26.21 -16.28 -10.36 -2.54 1.31

kinetics: Arrhenius(A=(6.95187e+18,'s^-1'), n=-1.628, Ea=(88.327,'kcal/mol'), T0=(1,'K'), comment="""Estimated from node Backbone0_N-2R!H-inRing_N-1R!H-inRing_Sp-2R!H-1R!H""")
kinetics: Arrhenius(A=(6.95187e+18,'s^-1'), n=-1.628, Ea=(111.271,'kcal/mol'), T0=(1,'K'), comment="""Estimated from node Backbone0_N-2R!H-inRing_N-1R!H-inRing_Sp-2R!H-1R!H""")
Identical kinetics comments:
kinetics: Estimated from node Backbone0_N-2R!H-inRing_N-1R!H-inRing_Sp-2R!H-1R!H

==> test/regression-diff/sulfur-edge.log <==

beep boop this action was performed by a bot 🤖

@github-actions github-actions bot removed the stale stale issue/PR as determined by actions bot label Jul 22, 2023
@rwest rwest force-pushed the chemkin_duplicates branch 2 times, most recently from 2f1b0fa to 13be032 Compare July 24, 2023 21:08
@github-actions
Copy link

Regression Testing Results

Traceback (most recent call last):
File "/home/runner/work/RMG-Py/RMG-Py/rmgpy/tools/diffmodels.py", line 348, in execute
surface_path1 = kwargs['surface_path1']
KeyError: 'surface_path1'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File "/usr/share/miniconda3/envs/rmg_env/lib/python3.7/site-packages/julia/pseudo_python_cli.py", line 308, in main
python(**vars(ns))
File "/usr/share/miniconda3/envs/rmg_env/lib/python3.7/site-packages/julia/pseudo_python_cli.py", line 59, in python
scope = runpy.run_path(script, run_name="main")
File "/usr/share/miniconda3/envs/rmg_env/lib/python3.7/runpy.py", line 263, in run_path
pkg_name=pkg_name, script_name=fname)
File "/usr/share/miniconda3/envs/rmg_env/lib/python3.7/runpy.py", line 96, in _run_module_code
mod_name, mod_spec, pkg_name, script_name)
File "/usr/share/miniconda3/envs/rmg_env/lib/python3.7/runpy.py", line 85, in _run_code
exec(code, run_globals)
File "scripts/checkModels.py", line 296, in
error = main()
File "scripts/checkModels.py", line 78, in main
error = check(name, bench_chemkin, bench_species_dict, test_chemkin, test_species_dict)
File "scripts/checkModels.py", line 92, in check
execute(benchChemkin, benchSpeciesDict, bench_thermo, testChemkin, testSpeciesDict, test_thermo, **kwargs)
File "/home/runner/work/RMG-Py/RMG-Py/rmgpy/tools/diffmodels.py", line 359, in execute
model2.species, model2.reactions = load_chemkin_file(chemkin2, species_dict2, thermo_path=thermo2)
File "rmgpy/chemkin.pyx", line 1055, in rmgpy.chemkin.load_chemkin_file
_process_duplicate_reactions(reaction_list)
File "rmgpy/chemkin.pyx", line 1153, in rmgpy.chemkin._process_duplicate_reactions
raise ChemkinError('Mixed kinetics for duplicate reaction {0}.'.format(reaction))
rmgpy.exceptions.ChemkinError: Mixed kinetics for duplicate reaction O2(2) + HOSO2(26) <=> SO3(16) + HO2(10).
⚠️ One or more regression tests failed.
Please download the failed results and run the tests locally or check the log to see why.

Detailed regression test results.

Regression test aromatics:

Reference: Execution time (DD:HH:MM:SS): 00:00:01:23
Current: Execution time (DD:HH:MM:SS): 00:00:01:16
Reference: Memory used: 2097.70 MB
Current: Memory used: 2093.54 MB

aromatics Passed Core Comparison ✅

Original model has 15 species.
Test model has 15 species. ✅
Original model has 11 reactions.
Test model has 11 reactions. ✅

aromatics Failed Edge Comparison ❌

Original model has 106 species.
Test model has 106 species. ✅
Original model has 358 reactions.
Test model has 358 reactions. ✅

Non-identical thermo! ❌
original: C1=CC2C=CC=1C=C2
tested: C1=CC2C=CC=1C=C2

Hf(300K) S(300K) Cp(300K) Cp(400K) Cp(500K) Cp(600K) Cp(800K) Cp(1000K) Cp(1500K)
164.90 80.93 22.21 28.97 35.25 40.69 48.70 53.97 64.36
129.39 79.85 22.98 30.09 36.61 42.21 50.22 55.39 65.95

thermo: Thermo group additivity estimation: group(Cs-(Cds-Cds)(Cds-Cds)(Cds-Cds)H) + group(Cds-Cds(Cds-Cds)(Cds-Cds)) + group(Cds-CdsCsH) + group(Cds-CdsCsH) + group(Cds-Cds(Cds-Cds)H) + group(Cds-Cds(Cds-Cds)H) + group(Cds-CdsCsH) + group(Cdd-CdsCds) + Estimated bicyclic component: polycyclic(s4_6_6_ane) - ring(Cyclohexane) - ring(Cyclohexane) + ring(124cyclohexatriene) + ring(124cyclohexatriene)
thermo: Thermo group additivity estimation: group(Cs-(Cds-Cds)(Cds-Cds)(Cds-Cds)H) + group(Cds-Cds(Cds-Cds)(Cds-Cds)) + group(Cds-CdsCsH) + group(Cds-CdsCsH) + group(Cds-Cds(Cds-Cds)H) + group(Cds-Cds(Cds-Cds)H) + group(Cds-CdsCsH) + group(Cdd-CdsCds) + Estimated bicyclic component: polycyclic(s4_6_6_ane) - ring(Cyclohexane) - ring(Cyclohexane) + ring(124cyclohexatriene) + ring(1,4-Cyclohexadiene)

Non-identical kinetics! ❌
original:
rxn: [c]1ccccc1(3) + C1=CC2C=C[C]1C=C2(49) <=> benzene(1) + C1=CC2C=CC=1C=C2(79) origin: Disproportionation
tested:
rxn: [c]1ccccc1(3) + C1=CC2C=C[C]1C=C2(49) <=> benzene(1) + C1=CC2C=CC=1C=C2(79) origin: Disproportionation

k(1bar) 300K 400K 500K 600K 800K 1000K 1500K 2000K
k(T): -3.00 -0.74 0.70 1.71 3.07 3.97 5.33 6.15
k(T): 4.24 4.69 5.05 5.33 5.79 6.14 6.78 7.23

kinetics: Arrhenius(A=(17.1699,'cm^3/(mol*s)'), n=3.635, Ea=(9.943,'kcal/mol'), T0=(1,'K'), comment="""Estimated from node Root_Ext-1R!H-R_N-4R->O_Sp-5R!H=1R!H_Ext-4CHNS-R_Ext-4CHNS-R Multiplied by reaction path degeneracy 3.0 Ea raised from 38.5 to 41.6 kJ/mol to match endothermicity of reaction.""")
kinetics: Arrhenius(A=(17.1699,'cm^3/(mol*s)'), n=3.635, Ea=(0,'kcal/mol'), T0=(1,'K'), comment="""Estimated from node Root_Ext-1R!H-R_N-4R->O_Sp-5R!H=1R!H_Ext-4CHNS-R_Ext-4CHNS-R Multiplied by reaction path degeneracy 3.0""")
kinetics: Estimated from node Root_Ext-1R!H-R_N-4R->O_Sp-5R!H=1R!H_Ext-4CHNS-R_Ext-4CHNS-R
Multiplied by reaction path degeneracy 3.0
Ea raised from 38.5 to 41.6 kJ/mol to match endothermicity of reaction.
kinetics: Estimated from node Root_Ext-1R!H-R_N-4R->O_Sp-5R!H=1R!H_Ext-4CHNS-R_Ext-4CHNS-R
Multiplied by reaction path degeneracy 3.0

Non-identical kinetics! ❌
original:
rxn: [H](4) + C1=CC2C=C[C]1C=C2(49) <=> [H][H](11) + C1=CC2C=CC=1C=C2(79) origin: Disproportionation
tested:
rxn: [H](4) + C1=CC2C=C[C]1C=C2(49) <=> [H][H](11) + C1=CC2C=CC=1C=C2(79) origin: Disproportionation

k(1bar) 300K 400K 500K 600K 800K 1000K 1500K 2000K
k(T): -7.44 -4.08 -2.05 -0.69 1.02 2.06 3.46 4.18
k(T): 5.77 5.83 5.88 5.92 5.97 6.02 6.10 6.16

kinetics: Arrhenius(A=(4.06926e+10,'cm^3/(mol*s)'), n=0.47, Ea=(18.137,'kcal/mol'), T0=(1,'K'), comment="""Estimated from node Root_Ext-1R!H-R_N-4R->O Multiplied by reaction path degeneracy 3.0 Ea raised from 75.2 to 75.9 kJ/mol to match endothermicity of reaction.""")
kinetics: Arrhenius(A=(4.06926e+10,'cm^3/(mol*s)'), n=0.47, Ea=(0,'kcal/mol'), T0=(1,'K'), comment="""Estimated from node Root_Ext-1R!H-R_N-4R->O Multiplied by reaction path degeneracy 3.0""")
kinetics: Estimated from node Root_Ext-1R!H-R_N-4R->O
Multiplied by reaction path degeneracy 3.0
Ea raised from 75.2 to 75.9 kJ/mol to match endothermicity of reaction.
kinetics: Estimated from node Root_Ext-1R!H-R_N-4R->O
Multiplied by reaction path degeneracy 3.0

Non-identical kinetics! ❌
original:
rxn: [CH]=C(7) + C1=CC2C=C[C]1C=C2(49) <=> C=C(13) + C1=CC2C=CC=1C=C2(79) origin: Disproportionation
tested:
rxn: [CH]=C(7) + C1=CC2C=C[C]1C=C2(49) <=> C=C(13) + C1=CC2C=CC=1C=C2(79) origin: Disproportionation

k(1bar) 300K 400K 500K 600K 800K 1000K 1500K 2000K
k(T): -7.17 -3.66 -1.56 -0.16 1.60 2.65 4.05 4.75
k(T): 4.06 4.76 5.18 5.46 5.81 6.02 6.30 6.44

kinetics: Arrhenius(A=(7.23e+12,'cm^3/(mol*s)'), n=0, Ea=(19.262,'kcal/mol'), T0=(1,'K'), comment="""Estimated from node Root_Ext-1R!H-R_N-4R->O_Sp-5R!H=1R!H_Ext-4CHNS-R_N-Sp-6R!H-4CHNS Multiplied by reaction path degeneracy 3.0""")
kinetics: Arrhenius(A=(7.23e+12,'cm^3/(mol*s)'), n=0, Ea=(3.841,'kcal/mol'), T0=(1,'K'), comment="""Estimated from node Root_Ext-1R!H-R_N-4R->O_Sp-5R!H=1R!H_Ext-4CHNS-R_N-Sp-6R!H-4CHNS Multiplied by reaction path degeneracy 3.0""")
Identical kinetics comments:
kinetics: Estimated from node Root_Ext-1R!H-R_N-4R->O_Sp-5R!H=1R!H_Ext-4CHNS-R_N-Sp-6R!H-4CHNS
Multiplied by reaction path degeneracy 3.0

Non-identical kinetics! ❌
original:
rxn: [CH]1C2=CC=CC12(8) + C1=CC2C=C[C]1C=C2(49) <=> C1=CC2CC2=C1(27) + C1=CC2C=CC=1C=C2(79) origin: Disproportionation
tested:
rxn: [CH]1C2=CC=CC12(8) + C1=CC2C=C[C]1C=C2(49) <=> C1=CC2CC2=C1(27) + C1=CC2C=CC=1C=C2(79) origin: Disproportionation

k(1bar) 300K 400K 500K 600K 800K 1000K 1500K 2000K
k(T): -30.48 -21.35 -15.79 -12.03 -7.23 -4.28 -0.16 2.03
k(T): -4.55 -1.90 -0.23 0.94 2.49 3.50 5.02 5.92

kinetics: Arrhenius(A=(17.1699,'cm^3/(mol*s)'), n=3.635, Ea=(47.659,'kcal/mol'), T0=(1,'K'), comment="""Estimated from node Root_Ext-1R!H-R_N-4R->O_Sp-5R!H=1R!H_Ext-4CHNS-R_Ext-4CHNS-R Multiplied by reaction path degeneracy 3.0 Ea raised from 195.4 to 199.4 kJ/mol to match endothermicity of reaction.""")
kinetics: Arrhenius(A=(17.1699,'cm^3/(mol*s)'), n=3.635, Ea=(12.063,'kcal/mol'), T0=(1,'K'), comment="""Estimated from node Root_Ext-1R!H-R_N-4R->O_Sp-5R!H=1R!H_Ext-4CHNS-R_Ext-4CHNS-R Multiplied by reaction path degeneracy 3.0 Ea raised from 46.8 to 50.5 kJ/mol to match endothermicity of reaction.""")
kinetics: Estimated from node Root_Ext-1R!H-R_N-4R->O_Sp-5R!H=1R!H_Ext-4CHNS-R_Ext-4CHNS-R
Multiplied by reaction path degeneracy 3.0
Ea raised from 195.4 to 199.4 kJ/mol to match endothermicity of reaction.
kinetics: Estimated from node Root_Ext-1R!H-R_N-4R->O_Sp-5R!H=1R!H_Ext-4CHNS-R_Ext-4CHNS-R
Multiplied by reaction path degeneracy 3.0
Ea raised from 46.8 to 50.5 kJ/mol to match endothermicity of reaction.

Non-identical kinetics! ❌
original:
rxn: [CH]1C2=CC=CC12(8) + C1=CC2C=C[C]1C=C2(49) <=> C1=CC2C=C2C1(29) + C1=CC2C=CC=1C=C2(79) origin: Disproportionation
tested:
rxn: [CH]1C2=CC=CC12(8) + C1=CC2C=C[C]1C=C2(49) <=> C1=CC2C=C2C1(29) + C1=CC2C=CC=1C=C2(79) origin: Disproportionation

k(1bar) 300K 400K 500K 600K 800K 1000K 1500K 2000K
k(T): -31.23 -21.91 -16.23 -12.40 -7.51 -4.50 -0.31 1.91
k(T): -5.30 -2.46 -0.68 0.57 2.21 3.28 4.87 5.80

kinetics: Arrhenius(A=(17.1699,'cm^3/(mol*s)'), n=3.635, Ea=(48.686,'kcal/mol'), T0=(1,'K'), comment="""Estimated from node Root_Ext-1R!H-R_N-4R->O_Sp-5R!H=1R!H_Ext-4CHNS-R_Ext-4CHNS-R Multiplied by reaction path degeneracy 3.0 Ea raised from 202.2 to 203.7 kJ/mol to match endothermicity of reaction.""")
kinetics: Arrhenius(A=(17.1699,'cm^3/(mol*s)'), n=3.635, Ea=(13.089,'kcal/mol'), T0=(1,'K'), comment="""Estimated from node Root_Ext-1R!H-R_N-4R->O_Sp-5R!H=1R!H_Ext-4CHNS-R_Ext-4CHNS-R Multiplied by reaction path degeneracy 3.0 Ea raised from 53.5 to 54.8 kJ/mol to match endothermicity of reaction.""")
kinetics: Estimated from node Root_Ext-1R!H-R_N-4R->O_Sp-5R!H=1R!H_Ext-4CHNS-R_Ext-4CHNS-R
Multiplied by reaction path degeneracy 3.0
Ea raised from 202.2 to 203.7 kJ/mol to match endothermicity of reaction.
kinetics: Estimated from node Root_Ext-1R!H-R_N-4R->O_Sp-5R!H=1R!H_Ext-4CHNS-R_Ext-4CHNS-R
Multiplied by reaction path degeneracy 3.0
Ea raised from 53.5 to 54.8 kJ/mol to match endothermicity of reaction.

Non-identical kinetics! ❌
original:
rxn: [CH]1C2=CC=CC12(8) + C1=CC2C=C[C]1C=C2(49) <=> C1=CC2=CC2C1(28) + C1=CC2C=CC=1C=C2(79) origin: Disproportionation
tested:
rxn: [CH]1C2=CC=CC12(8) + C1=CC2C=C[C]1C=C2(49) <=> C1=CC2=CC2C1(28) + C1=CC2C=CC=1C=C2(79) origin: Disproportionation

k(1bar) 300K 400K 500K 600K 800K 1000K 1500K 2000K
k(T): -27.24 -18.91 -13.84 -10.40 -6.02 -3.30 0.48 2.51
k(T): -1.38 0.48 1.67 2.52 3.68 4.45 5.66 6.39

kinetics: Arrhenius(A=(17.1699,'cm^3/(mol*s)'), n=3.635, Ea=(43.208,'kcal/mol'), T0=(1,'K'), comment="""Estimated from node Root_Ext-1R!H-R_N-4R->O_Sp-5R!H=1R!H_Ext-4CHNS-R_Ext-4CHNS-R Multiplied by reaction path degeneracy 3.0 Ea raised from 180.2 to 180.8 kJ/mol to match endothermicity of reaction.""")
kinetics: Arrhenius(A=(17.1699,'cm^3/(mol*s)'), n=3.635, Ea=(7.718,'kcal/mol'), T0=(1,'K'), comment="""Estimated from node Root_Ext-1R!H-R_N-4R->O_Sp-5R!H=1R!H_Ext-4CHNS-R_Ext-4CHNS-R Multiplied by reaction path degeneracy 3.0""")
kinetics: Estimated from node Root_Ext-1R!H-R_N-4R->O_Sp-5R!H=1R!H_Ext-4CHNS-R_Ext-4CHNS-R
Multiplied by reaction path degeneracy 3.0
Ea raised from 180.2 to 180.8 kJ/mol to match endothermicity of reaction.
kinetics: Estimated from node Root_Ext-1R!H-R_N-4R->O_Sp-5R!H=1R!H_Ext-4CHNS-R_Ext-4CHNS-R
Multiplied by reaction path degeneracy 3.0

Non-identical kinetics! ❌
original:
rxn: [CH]=CC=C(15) + C1=CC2C=C[C]1C=C2(49) <=> C=CC=C(17) + C1=CC2C=CC=1C=C2(79) origin: Disproportionation
tested:
rxn: [CH]=CC=C(15) + C1=CC2C=C[C]1C=C2(49) <=> C=CC=C(17) + C1=CC2C=CC=1C=C2(79) origin: Disproportionation

k(1bar) 300K 400K 500K 600K 800K 1000K 1500K 2000K
k(T): -11.95 -7.61 -5.01 -3.27 -1.10 0.20 1.93 2.80
k(T): -0.49 0.99 1.87 2.46 3.19 3.64 4.23 4.52

kinetics: Arrhenius(A=(2.529e+11,'cm^3/(mol*s)'), n=0, Ea=(23.821,'kcal/mol'), T0=(1,'K'), comment="""Estimated from node Root_Ext-1R!H-R_N-4R->O_Sp-5R!H=1R!H_Ext-4CHNS-R_Ext-6R!H-R Multiplied by reaction path degeneracy 3.0""")
kinetics: Arrhenius(A=(2.529e+11,'cm^3/(mol*s)'), n=0, Ea=(8.084,'kcal/mol'), T0=(1,'K'), comment="""Estimated from node Root_Ext-1R!H-R_N-4R->O_Sp-5R!H=1R!H_Ext-4CHNS-R_Ext-6R!H-R Multiplied by reaction path degeneracy 3.0""")
Identical kinetics comments:
kinetics: Estimated from node Root_Ext-1R!H-R_N-4R->O_Sp-5R!H=1R!H_Ext-4CHNS-R_Ext-6R!H-R
Multiplied by reaction path degeneracy 3.0

Non-identical kinetics! ❌
original:
rxn: C1=CC2C=C[C]1C=C2(49) + [CH]=Cc1ccccc1(12) <=> C1=CC2C=CC=1C=C2(79) + C=Cc1ccccc1(16) origin: Disproportionation
tested:
rxn: C1=CC2C=C[C]1C=C2(49) + [CH]=Cc1ccccc1(12) <=> C1=CC2C=CC=1C=C2(79) + C=Cc1ccccc1(16) origin: Disproportionation

k(1bar) 300K 400K 500K 600K 800K 1000K 1500K 2000K
k(T): -12.28 -7.86 -5.21 -3.44 -1.23 0.10 1.87 2.75
k(T): -0.66 0.85 1.76 2.37 3.13 3.58 4.19 4.49

kinetics: Arrhenius(A=(2.529e+11,'cm^3/(mol*s)'), n=0, Ea=(24.273,'kcal/mol'), T0=(1,'K'), comment="""Estimated from node Root_Ext-1R!H-R_N-4R->O_Sp-5R!H=1R!H_Ext-4CHNS-R_Ext-6R!H-R Multiplied by reaction path degeneracy 3.0""")
kinetics: Arrhenius(A=(2.529e+11,'cm^3/(mol*s)'), n=0, Ea=(8.328,'kcal/mol'), T0=(1,'K'), comment="""Estimated from node Root_Ext-1R!H-R_N-4R->O_Sp-5R!H=1R!H_Ext-4CHNS-R_Ext-6R!H-R Multiplied by reaction path degeneracy 3.0""")
Identical kinetics comments:
kinetics: Estimated from node Root_Ext-1R!H-R_N-4R->O_Sp-5R!H=1R!H_Ext-4CHNS-R_Ext-6R!H-R
Multiplied by reaction path degeneracy 3.0

Non-identical kinetics! ❌
original:
rxn: C1=CC2C=C[C]1C=C2(49) + [CH]1C2=CC=CC1C=C2(48) <=> C1=CC2C=CC=1C=C2(79) + C1=CC2C=CC(=C1)C2(69) origin: Disproportionation
tested:
rxn: C1=CC2C=C[C]1C=C2(49) + [CH]1C2=CC=CC1C=C2(48) <=> C1=CC2C=CC=1C=C2(79) + C1=CC2C=CC(=C1)C2(69) origin: Disproportionation

k(1bar) 300K 400K 500K 600K 800K 1000K 1500K 2000K
k(T): -30.44 -21.32 -15.76 -12.01 -7.22 -4.26 -0.16 2.03
k(T): -4.51 -1.87 -0.20 0.96 2.51 3.52 5.03 5.92

kinetics: Arrhenius(A=(17.1699,'cm^3/(mol*s)'), n=3.635, Ea=(47.606,'kcal/mol'), T0=(1,'K'), comment="""Estimated from node Root_Ext-1R!H-R_N-4R->O_Sp-5R!H=1R!H_Ext-4CHNS-R_Ext-4CHNS-R Multiplied by reaction path degeneracy 3.0 Ea raised from 195.1 to 199.2 kJ/mol to match endothermicity of reaction.""")
kinetics: Arrhenius(A=(17.1699,'cm^3/(mol*s)'), n=3.635, Ea=(12.01,'kcal/mol'), T0=(1,'K'), comment="""Estimated from node Root_Ext-1R!H-R_N-4R->O_Sp-5R!H=1R!H_Ext-4CHNS-R_Ext-4CHNS-R Multiplied by reaction path degeneracy 3.0 Ea raised from 46.5 to 50.2 kJ/mol to match endothermicity of reaction.""")
kinetics: Estimated from node Root_Ext-1R!H-R_N-4R->O_Sp-5R!H=1R!H_Ext-4CHNS-R_Ext-4CHNS-R
Multiplied by reaction path degeneracy 3.0
Ea raised from 195.1 to 199.2 kJ/mol to match endothermicity of reaction.
kinetics: Estimated from node Root_Ext-1R!H-R_N-4R->O_Sp-5R!H=1R!H_Ext-4CHNS-R_Ext-4CHNS-R
Multiplied by reaction path degeneracy 3.0
Ea raised from 46.5 to 50.2 kJ/mol to match endothermicity of reaction.

Non-identical kinetics! ❌
original:
rxn: C1=CC2C=C[C]1C=C2(49) + [CH]1C2=CC=CC1C=C2(48) <=> C1=CC2C=CC=1C=C2(79) + C1=CC2C=CC(=C2)C1(70) origin: Disproportionation
tested:
rxn: C1=CC2C=C[C]1C=C2(49) + [CH]1C2=CC=CC1C=C2(48) <=> C1=CC2C=CC=1C=C2(79) + C1=CC2C=CC(=C2)C1(70) origin: Disproportionation

k(1bar) 300K 400K 500K 600K 800K 1000K 1500K 2000K
k(T): -32.11 -22.57 -16.76 -12.84 -7.84 -4.76 -0.49 1.78
k(T): -6.18 -3.12 -1.20 0.13 1.88 3.01 4.70 5.67

kinetics: Arrhenius(A=(17.1699,'cm^3/(mol*s)'), n=3.635, Ea=(49.895,'kcal/mol'), T0=(1,'K'), comment="""Estimated from node Root_Ext-1R!H-R_N-4R->O_Sp-5R!H=1R!H_Ext-4CHNS-R_Ext-4CHNS-R Multiplied by reaction path degeneracy 3.0 Ea raised from 205.2 to 208.8 kJ/mol to match endothermicity of reaction.""")
kinetics: Arrhenius(A=(17.1699,'cm^3/(mol*s)'), n=3.635, Ea=(14.299,'kcal/mol'), T0=(1,'K'), comment="""Estimated from node Root_Ext-1R!H-R_N-4R->O_Sp-5R!H=1R!H_Ext-4CHNS-R_Ext-4CHNS-R Multiplied by reaction path degeneracy 3.0 Ea raised from 56.6 to 59.8 kJ/mol to match endothermicity of reaction.""")
kinetics: Estimated from node Root_Ext-1R!H-R_N-4R->O_Sp-5R!H=1R!H_Ext-4CHNS-R_Ext-4CHNS-R
Multiplied by reaction path degeneracy 3.0
Ea raised from 205.2 to 208.8 kJ/mol to match endothermicity of reaction.
kinetics: Estimated from node Root_Ext-1R!H-R_N-4R->O_Sp-5R!H=1R!H_Ext-4CHNS-R_Ext-4CHNS-R
Multiplied by reaction path degeneracy 3.0
Ea raised from 56.6 to 59.8 kJ/mol to match endothermicity of reaction.

Non-identical kinetics! ❌
original:
rxn: C1=CC2C=C[C]1C=C2(49) + [CH]1C2=CC=CC1C=C2(48) <=> C1=CC2C=CC=1C=C2(79) + C1=CC2=CC(C=C2)C1(71) origin: Disproportionation
tested:
rxn: C1=CC2C=C[C]1C=C2(49) + [CH]1C2=CC=CC1C=C2(48) <=> C1=CC2C=CC=1C=C2(79) + C1=CC2=CC(C=C2)C1(71) origin: Disproportionation

k(1bar) 300K 400K 500K 600K 800K 1000K 1500K 2000K
k(T): -33.97 -23.97 -17.88 -13.77 -8.54 -5.32 -0.86 1.50
k(T): -8.04 -4.52 -2.32 -0.81 1.18 2.46 4.32 5.39

kinetics: Arrhenius(A=(17.1699,'cm^3/(mol*s)'), n=3.635, Ea=(52.457,'kcal/mol'), T0=(1,'K'), comment="""Estimated from node Root_Ext-1R!H-R_N-4R->O_Sp-5R!H=1R!H_Ext-4CHNS-R_Ext-4CHNS-R Multiplied by reaction path degeneracy 3.0 Ea raised from 214.4 to 219.5 kJ/mol to match endothermicity of reaction.""")
kinetics: Arrhenius(A=(17.1699,'cm^3/(mol*s)'), n=3.635, Ea=(16.86,'kcal/mol'), T0=(1,'K'), comment="""Estimated from node Root_Ext-1R!H-R_N-4R->O_Sp-5R!H=1R!H_Ext-4CHNS-R_Ext-4CHNS-R Multiplied by reaction path degeneracy 3.0 Ea raised from 65.8 to 70.5 kJ/mol to match endothermicity of reaction.""")
kinetics: Estimated from node Root_Ext-1R!H-R_N-4R->O_Sp-5R!H=1R!H_Ext-4CHNS-R_Ext-4CHNS-R
Multiplied by reaction path degeneracy 3.0
Ea raised from 214.4 to 219.5 kJ/mol to match endothermicity of reaction.
kinetics: Estimated from node Root_Ext-1R!H-R_N-4R->O_Sp-5R!H=1R!H_Ext-4CHNS-R_Ext-4CHNS-R
Multiplied by reaction path degeneracy 3.0
Ea raised from 65.8 to 70.5 kJ/mol to match endothermicity of reaction.

Non-identical kinetics! ❌
original:
rxn: C1=CC2C=C[C]1C=C2(49) + C1=CC2C=C[C]1C=C2(49) <=> C1=CC2C=CC=1C=C2(79) + C1=CC2C=CC1C=C2(82) origin: Disproportionation
tested:
rxn: C1=CC2C=C[C]1C=C2(49) + C1=CC2C=C[C]1C=C2(49) <=> C1=CC2C=CC=1C=C2(79) + C1=CC2C=CC1C=C2(82) origin: Disproportionation

k(1bar) 300K 400K 500K 600K 800K 1000K 1500K 2000K
k(T): -30.48 -21.35 -15.79 -12.03 -7.23 -4.28 -0.16 2.03
k(T): -4.55 -1.90 -0.23 0.94 2.49 3.50 5.02 5.92

kinetics: Arrhenius(A=(17.1699,'cm^3/(mol*s)'), n=3.635, Ea=(47.659,'kcal/mol'), T0=(1,'K'), comment="""Estimated from node Root_Ext-1R!H-R_N-4R->O_Sp-5R!H=1R!H_Ext-4CHNS-R_Ext-4CHNS-R Multiplied by reaction path degeneracy 3.0 Ea raised from 195.4 to 199.4 kJ/mol to match endothermicity of reaction.""")
kinetics: Arrhenius(A=(17.1699,'cm^3/(mol*s)'), n=3.635, Ea=(12.063,'kcal/mol'), T0=(1,'K'), comment="""Estimated from node Root_Ext-1R!H-R_N-4R->O_Sp-5R!H=1R!H_Ext-4CHNS-R_Ext-4CHNS-R Multiplied by reaction path degeneracy 3.0 Ea raised from 46.8 to 50.5 kJ/mol to match endothermicity of reaction.""")
kinetics: Estimated from node Root_Ext-1R!H-R_N-4R->O_Sp-5R!H=1R!H_Ext-4CHNS-R_Ext-4CHNS-R
Multiplied by reaction path degeneracy 3.0
Ea raised from 195.4 to 199.4 kJ/mol to match endothermicity of reaction.
kinetics: Estimated from node Root_Ext-1R!H-R_N-4R->O_Sp-5R!H=1R!H_Ext-4CHNS-R_Ext-4CHNS-R
Multiplied by reaction path degeneracy 3.0
Ea raised from 46.8 to 50.5 kJ/mol to match endothermicity of reaction.

Non-identical kinetics! ❌
original:
rxn: C1=CC2C=C[C]1C=C2(49) + C1=CC2C=C[C]1C=C2(49) <=> C1=CC2C=CC=1C=C2(79) + C1=CC2C=CC1=CC2(83) origin: Disproportionation
tested:
rxn: C1=CC2C=C[C]1C=C2(49) + C1=CC2C=C[C]1C=C2(49) <=> C1=CC2C=CC=1C=C2(79) + C1=CC2C=CC1=CC2(83) origin: Disproportionation

k(1bar) 300K 400K 500K 600K 800K 1000K 1500K 2000K
k(T): -19.49 -12.98 -9.00 -6.29 -2.81 -0.64 2.42 4.08
k(T): 3.96 4.60 5.07 5.43 5.98 6.39 7.11 7.60

kinetics: Arrhenius(A=(51.5097,'cm^3/(mol*s)'), n=3.635, Ea=(33.226,'kcal/mol'), T0=(1,'K'), comment="""Estimated from node Root_Ext-1R!H-R_N-4R->O_Sp-5R!H=1R!H_Ext-4CHNS-R_Ext-4CHNS-R Multiplied by reaction path degeneracy 9.0 Ea raised from 133.4 to 139.0 kJ/mol to match endothermicity of reaction.""")
kinetics: Arrhenius(A=(51.5097,'cm^3/(mol*s)'), n=3.635, Ea=(1.036,'kcal/mol'), T0=(1,'K'), comment="""Estimated from node Root_Ext-1R!H-R_N-4R->O_Sp-5R!H=1R!H_Ext-4CHNS-R_Ext-4CHNS-R Multiplied by reaction path degeneracy 9.0""")
kinetics: Estimated from node Root_Ext-1R!H-R_N-4R->O_Sp-5R!H=1R!H_Ext-4CHNS-R_Ext-4CHNS-R
Multiplied by reaction path degeneracy 9.0
Ea raised from 133.4 to 139.0 kJ/mol to match endothermicity of reaction.
kinetics: Estimated from node Root_Ext-1R!H-R_N-4R->O_Sp-5R!H=1R!H_Ext-4CHNS-R_Ext-4CHNS-R
Multiplied by reaction path degeneracy 9.0

Observables Test Case: Aromatics Comparison

✅ All Observables varied by less than 0.500 on average between old model and new model in all conditions!

aromatics Passed Observable Testing ✅

Regression test liquid_oxidation:

Reference: Execution time (DD:HH:MM:SS): 00:00:02:47
Current: Execution time (DD:HH:MM:SS): 00:00:02:39
Reference: Memory used: 2216.73 MB
Current: Memory used: 2214.67 MB

liquid_oxidation Failed Core Comparison ❌

Original model has 37 species.
Test model has 37 species. ✅
Original model has 216 reactions.
Test model has 216 reactions. ✅

Non-identical kinetics! ❌
original:
rxn: CCCC(C)O[O](20) + CCCCCO[O](104) <=> oxygen(1) + CCCC(C)[O](61) + CCCCC[O](127) origin: Peroxyl_Disproportionation
tested:
rxn: CCCC(C)O[O](20) + CCCCCO[O](103) <=> oxygen(1) + CCCC(C)[O](64) + CCCCC[O](128) origin: Peroxyl_Disproportionation

k(1bar) 300K 400K 500K 600K 800K 1000K 1500K 2000K
k(T): 3.77 4.45 4.86 5.14 5.48 5.68 5.96 6.09
k(T): 7.83 7.49 7.23 7.02 6.68 6.42 5.95 5.61

kinetics: Arrhenius(A=(3.2e+12,'cm^3/(mol*s)'), n=0, Ea=(3.756,'kcal/mol'), T0=(1,'K'), comment="""Estimated from node Root_Ext-5R-R_7R!H->C_N-7C-inRing_Ext-5R-R""")
kinetics: Arrhenius(A=(3.18266e+20,'cm^3/(mol*s)'), n=-2.694, Ea=(0,'kcal/mol'), T0=(1,'K'), comment="""Estimated from node Root_Ext-5R-R_7R!H->C_N-7C-inRing""")
kinetics: Estimated from node Root_Ext-5R-R_7R!H->C_N-7C-inRing_Ext-5R-R
kinetics: Estimated from node Root_Ext-5R-R_7R!H->C_N-7C-inRing

liquid_oxidation Failed Edge Comparison ❌

Original model has 202 species.
Test model has 202 species. ✅
Original model has 1610 reactions.
Test model has 1613 reactions. ❌
The original model has 1 reactions that the tested model does not have. ❌
rxn: CCCCCO[O](104) + CCCCCO[O](104) <=> oxygen(1) + CCCCC=O(106) + CCCCCO(130) origin: Peroxyl_Termination
The tested model has 4 reactions that the original model does not have. ❌
rxn: C[CH]CCCO(157) + CCCCCO[O](103) <=> CC=CCCO(192) + CCCCCOO(105) origin: Disproportionation
rxn: C[CH]CCCO(157) + CCCCCO[O](103) <=> C=CCCCO(193) + CCCCCOO(105) origin: Disproportionation
rxn: C[CH]CCCO(157) + C[CH]CCCO(157) <=> CC=CCCO(192) + CCCCCO(130) origin: Disproportionation
rxn: C[CH]CCCO(157) + C[CH]CCCO(157) <=> C=CCCCO(193) + CCCCCO(130) origin: Disproportionation

Non-identical kinetics! ❌
original:
rxn: CCCC(C)O[O](20) + CCCCCO[O](104) <=> oxygen(1) + CCCC(C)[O](61) + CCCCC[O](127) origin: Peroxyl_Disproportionation
tested:
rxn: CCCC(C)O[O](20) + CCCCCO[O](103) <=> oxygen(1) + CCCC(C)[O](64) + CCCCC[O](128) origin: Peroxyl_Disproportionation

k(1bar) 300K 400K 500K 600K 800K 1000K 1500K 2000K
k(T): 3.77 4.45 4.86 5.14 5.48 5.68 5.96 6.09
k(T): 7.83 7.49 7.23 7.02 6.68 6.42 5.95 5.61

kinetics: Arrhenius(A=(3.2e+12,'cm^3/(mol*s)'), n=0, Ea=(3.756,'kcal/mol'), T0=(1,'K'), comment="""Estimated from node Root_Ext-5R-R_7R!H->C_N-7C-inRing_Ext-5R-R""")
kinetics: Arrhenius(A=(3.18266e+20,'cm^3/(mol*s)'), n=-2.694, Ea=(0,'kcal/mol'), T0=(1,'K'), comment="""Estimated from node Root_Ext-5R-R_7R!H->C_N-7C-inRing""")
kinetics: Estimated from node Root_Ext-5R-R_7R!H->C_N-7C-inRing_Ext-5R-R
kinetics: Estimated from node Root_Ext-5R-R_7R!H->C_N-7C-inRing

Non-identical kinetics! ❌
original:
rxn: CCCCCO[O](104) + CC(CC(C)OO)O[O](103) <=> oxygen(1) + CCCCC[O](127) + CC([O])CC(C)OO(129) origin: Peroxyl_Disproportionation
tested:
rxn: CCCCCO[O](103) + CC(CC(C)OO)O[O](104) <=> oxygen(1) + CCCCC[O](128) + CC([O])CC(C)OO(127) origin: Peroxyl_Disproportionation

k(1bar) 300K 400K 500K 600K 800K 1000K 1500K 2000K
k(T): 7.79 7.46 7.21 7.00 6.67 6.41 5.94 5.60
k(T): 3.52 4.27 4.71 5.01 5.39 5.61 5.91 6.06

kinetics: Arrhenius(A=(3.18266e+20,'cm^3/(mol*s)'), n=-2.694, Ea=(0.053,'kcal/mol'), T0=(1,'K'), comment="""Estimated from node Root_Ext-5R-R_7R!H->C_N-7C-inRing Ea raised from 0.0 to 0.2 kJ/mol to match endothermicity of reaction.""")
kinetics: Arrhenius(A=(3.2e+12,'cm^3/(mol*s)'), n=0, Ea=(4.096,'kcal/mol'), T0=(1,'K'), comment="""Estimated from node Root_Ext-5R-R_7R!H->C_N-7C-inRing_Ext-5R-R""")
kinetics: Estimated from node Root_Ext-5R-R_7R!H->C_N-7C-inRing
Ea raised from 0.0 to 0.2 kJ/mol to match endothermicity of reaction.
kinetics: Estimated from node Root_Ext-5R-R_7R!H->C_N-7C-inRing_Ext-5R-R

Observables Test Case: liquid_oxidation Comparison

✅ All Observables varied by less than 0.100 on average between old model and new model in all conditions!

liquid_oxidation Passed Observable Testing ✅

Regression test nitrogen:

Reference: Execution time (DD:HH:MM:SS): 00:00:01:44
Current: Execution time (DD:HH:MM:SS): 00:00:01:38
Reference: Memory used: 2214.09 MB
Current: Memory used: 2213.02 MB

nitrogen Failed Core Comparison ❌

Original model has 41 species.
Test model has 41 species. ✅
Original model has 360 reactions.
Test model has 359 reactions. ❌
The original model has 1 reactions that the tested model does not have. ❌
rxn: HNO(48) + HCO(13) <=> NO(38) + CH2O(18) origin: H_Abstraction

nitrogen Failed Edge Comparison ❌

Original model has 132 species.
Test model has 132 species. ✅
Original model has 997 reactions.
Test model has 995 reactions. ❌
The original model has 2 reactions that the tested model does not have. ❌
rxn: HNO(48) + HCO(13) <=> NO(38) + CH2O(18) origin: H_Abstraction
rxn: HON(T)(83) + HCO(13) <=> NO(38) + CH2O(18) origin: Disproportionation

Observables Test Case: NC Comparison

✅ All Observables varied by less than 0.200 on average between old model and new model in all conditions!

nitrogen Passed Observable Testing ✅

Regression test oxidation:

Reference: Execution time (DD:HH:MM:SS): 00:00:02:50
Current: Execution time (DD:HH:MM:SS): 00:00:02:42
Reference: Memory used: 2084.02 MB
Current: Memory used: 2076.95 MB

oxidation Passed Core Comparison ✅

Original model has 59 species.
Test model has 59 species. ✅
Original model has 694 reactions.
Test model has 694 reactions. ✅

oxidation Passed Edge Comparison ✅

Original model has 230 species.
Test model has 230 species. ✅
Original model has 1526 reactions.
Test model has 1526 reactions. ✅

Observables Test Case: Oxidation Comparison

✅ All Observables varied by less than 0.500 on average between old model and new model in all conditions!

oxidation Passed Observable Testing ✅

Regression test sulfur:

Reference: Execution time (DD:HH:MM:SS): 00:00:01:08
Current: Execution time (DD:HH:MM:SS): 00:00:01:04
Reference: Memory used: 2183.30 MB
Current: Memory used: 2191.12 MB

sulfur Passed Core Comparison ✅

Original model has 27 species.
Test model has 27 species. ✅
Original model has 74 reactions.
Test model has 74 reactions. ✅

sulfur Failed Edge Comparison ❌
Observables Test Case: SO2 Comparison

✅ All Observables varied by less than 0.100 on average between old model and new model in all conditions!

sulfur Passed Observable Testing ✅

Regression test superminimal:

Reference: Execution time (DD:HH:MM:SS): 00:00:00:43
Current: Execution time (DD:HH:MM:SS): 00:00:00:40
Reference: Memory used: 2322.90 MB
Current: Memory used: 2311.25 MB

superminimal Passed Core Comparison ✅

Original model has 13 species.
Test model has 13 species. ✅
Original model has 21 reactions.
Test model has 21 reactions. ✅

superminimal Passed Edge Comparison ✅

Original model has 18 species.
Test model has 18 species. ✅
Original model has 28 reactions.
Test model has 28 reactions. ✅

Regression test RMS_constantVIdealGasReactor_superminimal:

Reference: Execution time (DD:HH:MM:SS): 00:00:03:21
Current: Execution time (DD:HH:MM:SS): 00:00:03:03
Reference: Memory used: 2753.11 MB
Current: Memory used: 2721.83 MB

RMS_constantVIdealGasReactor_superminimal Passed Core Comparison ✅

Original model has 13 species.
Test model has 13 species. ✅
Original model has 19 reactions.
Test model has 19 reactions. ✅

RMS_constantVIdealGasReactor_superminimal Passed Edge Comparison ✅

Original model has 13 species.
Test model has 13 species. ✅
Original model has 19 reactions.
Test model has 19 reactions. ✅

Observables Test Case: RMS_constantVIdealGasReactor_superminimal Comparison

✅ All Observables varied by less than 0.100 on average between old model and new model in all conditions!

RMS_constantVIdealGasReactor_superminimal Passed Observable Testing ✅

Regression test RMS_CSTR_liquid_oxidation:

Reference: Execution time (DD:HH:MM:SS): 00:00:08:16
Current: Execution time (DD:HH:MM:SS): 00:00:07:40
Reference: Memory used: 2712.73 MB
Current: Memory used: 2729.04 MB

RMS_CSTR_liquid_oxidation Failed Core Comparison ❌

Original model has 37 species.
Test model has 37 species. ✅
Original model has 232 reactions.
Test model has 233 reactions. ❌
The tested model has 1 reactions that the original model does not have. ❌
rxn: CCO[O](34) <=> [OH](22) + CC=O(62) origin: intra_H_migration

RMS_CSTR_liquid_oxidation Failed Edge Comparison ❌

Original model has 206 species.
Test model has 206 species. ✅
Original model has 1508 reactions.
Test model has 1508 reactions. ✅
The original model has 2 reactions that the tested model does not have. ❌
rxn: CCCO[O](35) <=> CC[CH]OO(45) origin: intra_H_migration
rxn: CCO[O](34) <=> C[CH]OO(62) origin: intra_H_migration
The tested model has 2 reactions that the original model does not have. ❌
rxn: CCO[O](34) <=> [OH](22) + CC=O(62) origin: intra_H_migration
rxn: CCCO[O](35) <=> [OH](22) + CCC=O(44) origin: intra_H_migration

Non-identical kinetics! ❌
original:
rxn: CCCO[O](35) + CCCC(C)O[O](33) <=> oxygen(1) + CCC[O](94) + CCCC(C)[O](61) origin: Peroxyl_Disproportionation
tested:
rxn: CCCO[O](35) + CCCC(C)O[O](33) <=> oxygen(1) + CCC[O](92) + CCCC(C)[O](65) origin: Peroxyl_Disproportionation

k(1bar) 300K 400K 500K 600K 800K 1000K 1500K 2000K
k(T): 3.69 4.39 4.82 5.10 5.45 5.66 5.94 6.08
k(T): 7.83 7.49 7.23 7.02 6.68 6.42 5.95 5.61

kinetics: Arrhenius(A=(3.2e+12,'cm^3/(mol*s)'), n=0, Ea=(3.866,'kcal/mol'), T0=(1,'K'), comment="""Estimated from node Root_Ext-5R-R_7R!H->C_N-7C-inRing_Ext-5R-R""")
kinetics: Arrhenius(A=(3.18266e+20,'cm^3/(mol*s)'), n=-2.694, Ea=(0,'kcal/mol'), T0=(1,'K'), comment="""Estimated from node Root_Ext-5R-R_7R!H->C_N-7C-inRing""")
kinetics: Estimated from node Root_Ext-5R-R_7R!H->C_N-7C-inRing_Ext-5R-R
kinetics: Estimated from node Root_Ext-5R-R_7R!H->C_N-7C-inRing

Observables Test Case: RMS_CSTR_liquid_oxidation Comparison

✅ All Observables varied by less than 0.100 on average between old model and new model in all conditions!

RMS_CSTR_liquid_oxidation Passed Observable Testing ✅

beep boop this comment was written by a bot 🤖

@github-actions
Copy link

Regression Testing Results

Traceback (most recent call last):
File "/home/runner/work/RMG-Py/RMG-Py/rmgpy/tools/diffmodels.py", line 348, in execute
surface_path1 = kwargs['surface_path1']
KeyError: 'surface_path1'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File "/usr/share/miniconda3/envs/rmg_env/lib/python3.7/site-packages/julia/pseudo_python_cli.py", line 308, in main
python(**vars(ns))
File "/usr/share/miniconda3/envs/rmg_env/lib/python3.7/site-packages/julia/pseudo_python_cli.py", line 59, in python
scope = runpy.run_path(script, run_name="main")
File "/usr/share/miniconda3/envs/rmg_env/lib/python3.7/runpy.py", line 263, in run_path
pkg_name=pkg_name, script_name=fname)
File "/usr/share/miniconda3/envs/rmg_env/lib/python3.7/runpy.py", line 96, in _run_module_code
mod_name, mod_spec, pkg_name, script_name)
File "/usr/share/miniconda3/envs/rmg_env/lib/python3.7/runpy.py", line 85, in _run_code
exec(code, run_globals)
File "scripts/checkModels.py", line 296, in
error = main()
File "scripts/checkModels.py", line 78, in main
error = check(name, bench_chemkin, bench_species_dict, test_chemkin, test_species_dict)
File "scripts/checkModels.py", line 92, in check
execute(benchChemkin, benchSpeciesDict, bench_thermo, testChemkin, testSpeciesDict, test_thermo, **kwargs)
File "/home/runner/work/RMG-Py/RMG-Py/rmgpy/tools/diffmodels.py", line 359, in execute
model2.species, model2.reactions = load_chemkin_file(chemkin2, species_dict2, thermo_path=thermo2)
File "rmgpy/chemkin.pyx", line 1055, in rmgpy.chemkin.load_chemkin_file
_process_duplicate_reactions(reaction_list)
File "rmgpy/chemkin.pyx", line 1153, in rmgpy.chemkin._process_duplicate_reactions
raise ChemkinError('Mixed kinetics for duplicate reaction {0}.'.format(reaction))
rmgpy.exceptions.ChemkinError: Mixed kinetics for duplicate reaction O2(2) + HOSO2(26) <=> SO3(16) + HO2(10).
⚠️ One or more regression tests failed.
Please download the failed results and run the tests locally or check the log to see why.

Detailed regression test results.

Regression test aromatics:

Reference: Execution time (DD:HH:MM:SS): 00:00:01:24
Current: Execution time (DD:HH:MM:SS): 00:00:01:16
Reference: Memory used: 2098.16 MB
Current: Memory used: 2088.81 MB

aromatics Passed Core Comparison ✅

Original model has 15 species.
Test model has 15 species. ✅
Original model has 11 reactions.
Test model has 11 reactions. ✅

aromatics Passed Edge Comparison ✅

Original model has 106 species.
Test model has 106 species. ✅
Original model has 358 reactions.
Test model has 358 reactions. ✅

Observables Test Case: Aromatics Comparison

✅ All Observables varied by less than 0.500 on average between old model and new model in all conditions!

aromatics Passed Observable Testing ✅

Regression test liquid_oxidation:

Reference: Execution time (DD:HH:MM:SS): 00:00:02:51
Current: Execution time (DD:HH:MM:SS): 00:00:02:35
Reference: Memory used: 2213.37 MB
Current: Memory used: 2216.46 MB

liquid_oxidation Failed Core Comparison ❌

Original model has 37 species.
Test model has 37 species. ✅
Original model has 215 reactions.
Test model has 216 reactions. ❌
The tested model has 1 reactions that the original model does not have. ❌
rxn: CCO[O](31) <=> [OH](22) + CC=O(69) origin: intra_H_migration

Non-identical kinetics! ❌
original:
rxn: CCCC(C)O[O](20) + CCCCCO[O](103) <=> oxygen(1) + CCCC(C)[O](61) + CCCCC[O](128) origin: Peroxyl_Disproportionation
tested:
rxn: CCCC(C)O[O](20) + CCCCCO[O](104) <=> oxygen(1) + CCCC(C)[O](64) + CCCCC[O](128) origin: Peroxyl_Disproportionation

k(1bar) 300K 400K 500K 600K 800K 1000K 1500K 2000K
k(T): 7.83 7.49 7.23 7.02 6.68 6.42 5.95 5.61
k(T): 3.77 4.45 4.86 5.14 5.48 5.68 5.96 6.09

kinetics: Arrhenius(A=(3.18266e+20,'cm^3/(mol*s)'), n=-2.694, Ea=(0,'kcal/mol'), T0=(1,'K'), comment="""Estimated from node Root_Ext-5R-R_7R!H->C_N-7C-inRing""")
kinetics: Arrhenius(A=(3.2e+12,'cm^3/(mol*s)'), n=0, Ea=(3.756,'kcal/mol'), T0=(1,'K'), comment="""Estimated from node Root_Ext-5R-R_7R!H->C_N-7C-inRing_Ext-5R-R""")
kinetics: Estimated from node Root_Ext-5R-R_7R!H->C_N-7C-inRing
kinetics: Estimated from node Root_Ext-5R-R_7R!H->C_N-7C-inRing_Ext-5R-R

liquid_oxidation Failed Edge Comparison ❌

Original model has 202 species.
Test model has 202 species. ✅
Original model has 1613 reactions.
Test model has 1610 reactions. ❌
The original model has 5 reactions that the tested model does not have. ❌
rxn: CCO[O](29) <=> C[CH]OO(70) origin: intra_H_migration
rxn: C[CH]CCCO(157) + CCCCCO[O](103) <=> CC=CCCO(183) + CCCCCOO(105) origin: Disproportionation
rxn: C[CH]CCCO(157) + CCCCCO[O](103) <=> C=CCCCO(184) + CCCCCOO(105) origin: Disproportionation
rxn: C[CH]CCCO(157) + C[CH]CCCO(157) <=> CC=CCCO(183) + CCCCCO(130) origin: Disproportionation
rxn: C[CH]CCCO(157) + C[CH]CCCO(157) <=> C=CCCCO(184) + CCCCCO(130) origin: Disproportionation
The tested model has 2 reactions that the original model does not have. ❌
rxn: CCO[O](31) <=> [OH](22) + CC=O(69) origin: intra_H_migration
rxn: CCCCCO[O](104) + CCCCCO[O](104) <=> oxygen(1) + CCCCC=O(120) + CCCCCO(130) origin: Peroxyl_Termination

Non-identical kinetics! ❌
original:
rxn: CCCC(C)O[O](20) + CCCCCO[O](103) <=> oxygen(1) + CCCC(C)[O](61) + CCCCC[O](128) origin: Peroxyl_Disproportionation
tested:
rxn: CCCC(C)O[O](20) + CCCCCO[O](104) <=> oxygen(1) + CCCC(C)[O](64) + CCCCC[O](128) origin: Peroxyl_Disproportionation

k(1bar) 300K 400K 500K 600K 800K 1000K 1500K 2000K
k(T): 7.83 7.49 7.23 7.02 6.68 6.42 5.95 5.61
k(T): 3.77 4.45 4.86 5.14 5.48 5.68 5.96 6.09

kinetics: Arrhenius(A=(3.18266e+20,'cm^3/(mol*s)'), n=-2.694, Ea=(0,'kcal/mol'), T0=(1,'K'), comment="""Estimated from node Root_Ext-5R-R_7R!H->C_N-7C-inRing""")
kinetics: Arrhenius(A=(3.2e+12,'cm^3/(mol*s)'), n=0, Ea=(3.756,'kcal/mol'), T0=(1,'K'), comment="""Estimated from node Root_Ext-5R-R_7R!H->C_N-7C-inRing_Ext-5R-R""")
kinetics: Estimated from node Root_Ext-5R-R_7R!H->C_N-7C-inRing
kinetics: Estimated from node Root_Ext-5R-R_7R!H->C_N-7C-inRing_Ext-5R-R

Observables Test Case: liquid_oxidation Comparison

✅ All Observables varied by less than 0.100 on average between old model and new model in all conditions!

liquid_oxidation Passed Observable Testing ✅

Regression test nitrogen:

Reference: Execution time (DD:HH:MM:SS): 00:00:01:45
Current: Execution time (DD:HH:MM:SS): 00:00:01:38
Reference: Memory used: 2214.14 MB
Current: Memory used: 2203.59 MB

nitrogen Failed Core Comparison ❌

Original model has 41 species.
Test model has 41 species. ✅
Original model has 360 reactions.
Test model has 359 reactions. ❌
The original model has 1 reactions that the tested model does not have. ❌
rxn: HNO(48) + HCO(13) <=> NO(38) + CH2O(18) origin: H_Abstraction

nitrogen Failed Edge Comparison ❌

Original model has 132 species.
Test model has 132 species. ✅
Original model has 997 reactions.
Test model has 995 reactions. ❌

Non-identical thermo! ❌
original: O1[C]=N1
tested: O1[C]=N1

Hf(300K) S(300K) Cp(300K) Cp(400K) Cp(500K) Cp(600K) Cp(800K) Cp(1000K) Cp(1500K)
116.46 53.90 11.62 12.71 13.49 13.96 14.14 13.85 13.58
141.64 58.66 12.26 12.27 12.09 11.96 12.26 12.72 12.15

thermo: Thermo group additivity estimation: group(O2s-CdN3d) + group(N3d-OCd) + group(Cd-HN3dO) + ring(Cyclopropene) + radical(CdJ-NdO)
thermo: Thermo group additivity estimation: group(O2s-CdN3d) + group(N3d-OCd) + group(Cd-HN3dO) + ring(oxirene) + radical(CdJ-NdO)
The original model has 2 reactions that the tested model does not have. ❌
rxn: HNO(48) + HCO(13) <=> NO(38) + CH2O(18) origin: H_Abstraction
rxn: HON(T)(83) + HCO(13) <=> NO(38) + CH2O(18) origin: Disproportionation

Non-identical kinetics! ❌
original:
rxn: NCO(66) <=> O1[C]=N1(126) origin: Intra_R_Add_Endocyclic
tested:
rxn: NCO(66) <=> O1[C]=N1(126) origin: Intra_R_Add_Endocyclic

k(1bar) 300K 400K 500K 600K 800K 1000K 1500K 2000K
k(T): -49.54 -33.65 -24.16 -17.85 -10.01 -5.35 0.80 3.82
k(T): -66.25 -46.19 -34.19 -26.21 -16.28 -10.36 -2.54 1.31

kinetics: Arrhenius(A=(6.95187e+18,'s^-1'), n=-1.628, Ea=(88.327,'kcal/mol'), T0=(1,'K'), comment="""Estimated from node Backbone0_N-2R!H-inRing_N-1R!H-inRing_Sp-2R!H-1R!H""")
kinetics: Arrhenius(A=(6.95187e+18,'s^-1'), n=-1.628, Ea=(111.271,'kcal/mol'), T0=(1,'K'), comment="""Estimated from node Backbone0_N-2R!H-inRing_N-1R!H-inRing_Sp-2R!H-1R!H""")
Identical kinetics comments:
kinetics: Estimated from node Backbone0_N-2R!H-inRing_N-1R!H-inRing_Sp-2R!H-1R!H

Observables Test Case: NC Comparison

✅ All Observables varied by less than 0.200 on average between old model and new model in all conditions!

nitrogen Passed Observable Testing ✅

Regression test oxidation:

Reference: Execution time (DD:HH:MM:SS): 00:00:02:51
Current: Execution time (DD:HH:MM:SS): 00:00:02:39
Reference: Memory used: 2073.13 MB
Current: Memory used: 2070.08 MB

oxidation Passed Core Comparison ✅

Original model has 59 species.
Test model has 59 species. ✅
Original model has 694 reactions.
Test model has 694 reactions. ✅

oxidation Passed Edge Comparison ✅

Original model has 230 species.
Test model has 230 species. ✅
Original model has 1526 reactions.
Test model has 1526 reactions. ✅

Observables Test Case: Oxidation Comparison

✅ All Observables varied by less than 0.500 on average between old model and new model in all conditions!

oxidation Passed Observable Testing ✅

Regression test sulfur:

Reference: Execution time (DD:HH:MM:SS): 00:00:01:10
Current: Execution time (DD:HH:MM:SS): 00:00:01:03
Reference: Memory used: 2184.40 MB
Current: Memory used: 2169.32 MB

sulfur Passed Core Comparison ✅

Original model has 27 species.
Test model has 27 species. ✅
Original model has 74 reactions.
Test model has 74 reactions. ✅

sulfur Failed Edge Comparison ❌
Observables Test Case: SO2 Comparison

✅ All Observables varied by less than 0.100 on average between old model and new model in all conditions!

sulfur Passed Observable Testing ✅

Regression test superminimal:

Reference: Execution time (DD:HH:MM:SS): 00:00:00:44
Current: Execution time (DD:HH:MM:SS): 00:00:00:40
Reference: Memory used: 2339.53 MB
Current: Memory used: 2339.32 MB

superminimal Passed Core Comparison ✅

Original model has 13 species.
Test model has 13 species. ✅
Original model has 21 reactions.
Test model has 21 reactions. ✅

superminimal Passed Edge Comparison ✅

Original model has 18 species.
Test model has 18 species. ✅
Original model has 28 reactions.
Test model has 28 reactions. ✅

Regression test RMS_constantVIdealGasReactor_superminimal:

Reference: Execution time (DD:HH:MM:SS): 00:00:03:28
Current: Execution time (DD:HH:MM:SS): 00:00:02:59
Reference: Memory used: 2710.82 MB
Current: Memory used: 2737.83 MB

RMS_constantVIdealGasReactor_superminimal Passed Core Comparison ✅

Original model has 13 species.
Test model has 13 species. ✅
Original model has 19 reactions.
Test model has 19 reactions. ✅

RMS_constantVIdealGasReactor_superminimal Passed Edge Comparison ✅

Original model has 13 species.
Test model has 13 species. ✅
Original model has 19 reactions.
Test model has 19 reactions. ✅

Observables Test Case: RMS_constantVIdealGasReactor_superminimal Comparison

✅ All Observables varied by less than 0.100 on average between old model and new model in all conditions!

RMS_constantVIdealGasReactor_superminimal Passed Observable Testing ✅

Regression test RMS_CSTR_liquid_oxidation:

Reference: Execution time (DD:HH:MM:SS): 00:00:08:16
Current: Execution time (DD:HH:MM:SS): 00:00:07:14
Reference: Memory used: 2722.57 MB
Current: Memory used: 2700.71 MB

RMS_CSTR_liquid_oxidation Failed Core Comparison ❌

Original model has 37 species.
Test model has 35 species. ❌
Original model has 232 reactions.
Test model has 211 reactions. ❌
The original model has 2 species that the tested model does not have. ❌
spc: CCC(38)
spc: C[CH]OCCC(126)
The original model has 21 reactions that the tested model does not have. ❌
rxn: [CH2]CC(5) + pentane(2) <=> CCC(38) + CC[CH]CC(7) origin: H_Abstraction
rxn: [CH2]CC(5) + pentane(2) <=> CCC(38) + C[CH]CCC(11) origin: H_Abstraction
rxn: CCC(38) + [CH2]CCCC(12) <=> [CH2]CC(5) + pentane(2) origin: H_Abstraction
rxn: [CH2]CC(5) + CCCC(C)OO(58) <=> CCC(38) + CCCC(C)O[O](33) origin: H_Abstraction
rxn: [CH2]CC(5) + C[CH]CCC(11) <=> CCC(38) + C=CCCC(25) origin: Disproportionation
rxn: [CH2]CC(5) + CCC(CC)OO(23) <=> CCC(38) + CCC(CC)O[O](19) origin: H_Abstraction
rxn: [CH2]CC(5) + CCCCCOO(89) <=> CCC(38) + CCCCCO[O](69) origin: H_Abstraction
rxn: [CH2]CC(5) + CCCOO(59) <=> CCCO[O](35) + CCC(38) origin: H_Abstraction
rxn: [OH](21) + CCC(38) <=> O(40) + [CH2]CC(5) origin: H_Abstraction
rxn: OO(20) + [CH2]CC(5) <=> [O]O(13) + CCC(38) origin: H_Abstraction
rxn: CC=O(99) + [CH2]CC(5) <=> C[CH]OCCC(126) origin: R_Addition_MultipleBond
rxn: [CH2]CC(5) + CCCC(C)OO(58) <=> CCC(38) + C[CH]CC(C)OO(52) origin: H_Abstraction
rxn: [O]O(13) + [CH2]CC(5) <=> oxygen(1) + CCC(38) origin: H_Abstraction
rxn: [CH2]CC(5) + [CH2]CCCC(12) <=> CCC(38) + C=CCCC(25) origin: Disproportionation
rxn: [CH2]CC(5) + CCCC(C)OO(58) <=> CCC(38) + CC[CH]C(C)OO(50) origin: H_Abstraction
rxn: [CH2]CC(5) + CCC(CC)OO(23) <=> CCC(38) + C[CH]C(CC)OO(31) origin: H_Abstraction
rxn: [CH2]CC(5) + CC(CC(C)OO)OO(171) <=> CCC(38) + CC(CC(C)OO)O[O](148) origin: H_Abstraction
rxn: [CH2]CC(5) + C[CH]CCC(11) <=> CCC(38) + CC=CCC(16) origin: Disproportionation
rxn: [CH2]CC(5) + CC[CH]CC(7) <=> CCC(38) + CC=CCC(16) origin: Disproportionation
rxn: CCO[O](34) + C[CH]CCC(11) <=> CCOO(71) + CC=CCC(16) origin: Disproportionation
rxn: CCO[O](34) + CC[CH]CC(7) <=> CCOO(71) + CC=CCC(16) origin: Disproportionation

RMS_CSTR_liquid_oxidation Failed Edge Comparison ❌

Original model has 206 species.
Test model has 197 species. ❌
Original model has 1508 reactions.
Test model has 1421 reactions. ❌
The original model has 9 species that the tested model does not have. ❌
spc: C[CH]OCC(136)
spc: C=COCCC(137)
spc: [CH2]COCCC(138)
spc: CC[CH]OCC(139)
spc: C[CH]COCC(140)
spc: [CH2]CCOCC(141)
spc: CCCOCC(149)
spc: CC([O])O(150)
spc: C[CH]C(O)CC(202)
The original model has 97 reactions that the tested model does not have. ❌
rxn: [CH2]CC(5) + [CH2]CCCC(12) <=> CCC(38) + C=CCCC(25) origin: Disproportionation
rxn: CCO[O](34) + C[CH]CCC(11) <=> CCOO(71) + CC=CCC(16) origin: Disproportionation
rxn: CCO[O](34) + CC[CH]CC(7) <=> CCOO(71) + CC=CCC(16) origin: Disproportionation
rxn: [CH2](3) + CC(37) <=> CCC(38) origin: 1,2_Insertion_carbene
rxn: [CH2](3) + CC(37) <=> CCC(38) origin: 1,2_Insertion_carbene
rxn: [CH3](10) + C[CH2](6) <=> CCC(38) origin: R_Recombination
rxn: [H](8) + C[CH]C(28) <=> CCC(38) origin: R_Recombination
rxn: [H](8) + [CH2]CC(5) <=> CCC(38) origin: R_Recombination
rxn: [CH2](3) + C[CH]OCC(136) <=> C[CH]OCCC(126) origin: 1,2_Insertion_carbene
rxn: [CH2](3) + C[CH]OCC(136) <=> C[CH]OCCC(126) origin: 1,2_Insertion_carbene
rxn: [H](8) + C=COCCC(137) <=> C[CH]OCCC(126) origin: R_Addition_MultipleBond
rxn: [CH2]COCCC(138) <=> C[CH]OCCC(126) origin: intra_H_migration
rxn: CC[CH]OCC(139) <=> C[CH]OCCC(126) origin: intra_H_migration
rxn: C[CH]COCC(140) <=> C[CH]OCCC(126) origin: intra_H_migration
rxn: [CH2]CCOCC(141) <=> C[CH]OCCC(126) origin: intra_H_migration
rxn: oxygen(1) + CCC(38) <=> [O]O(13) + C[CH]C(28) origin: H_Abstraction
rxn: CC[CH]CC(7) + CCCOCC(149) <=> C[CH]OCCC(126) + pentane(2) origin: H_Abstraction
rxn: C[CH]CCC(11) + CCCOCC(149) <=> C[CH]OCCC(126) + pentane(2) origin: H_Abstraction
rxn: [CH2]CCCC(12) + CCCOCC(149) <=> C[CH]OCCC(126) + pentane(2) origin: H_Abstraction
rxn: [O]O(13) + CCC(38) <=> OO(20) + C[CH]C(28) origin: H_Abstraction
rxn: C[CH]C(28) + pentane(2) <=> CCC(38) + C[CH]CCC(11) origin: H_Abstraction
rxn: C[CH]C(28) + pentane(2) <=> CCC(38) + CC[CH]CC(7) origin: H_Abstraction
rxn: [CH2]CC(5) + CCC(38) <=> C[CH]C(28) + CCC(38) origin: H_Abstraction
rxn: C[CH]C(28) + CCC(CC)OO(23) <=> CCC(38) + CCC(CC)O[O](19) origin: H_Abstraction
rxn: C[CH]C(28) + CCCC(C)OO(58) <=> CCC(38) + CCCC(C)O[O](33) origin: H_Abstraction
rxn: C[CH]C(28) + CCCOO(59) <=> CCCO[O](35) + CCC(38) origin: H_Abstraction
rxn: CCC(38) + [CH2]CCCC(12) <=> C[CH]C(28) + pentane(2) origin: H_Abstraction
rxn: C[CH]C(28) + [CH2]CCCC(12) <=> CCC(38) + C=CCCC(25) origin: Disproportionation
rxn: C[CH]C(28) + C[CH]CCC(11) <=> CCC(38) + C=CCCC(25) origin: Disproportionation
rxn: [OH](21) + CC=O(99) <=> O(40) + C=C[O](120) origin: H_Abstraction
rxn: [OH](21) + CC=O(99) <=> O(40) + C[C]=O(121) origin: H_Abstraction
rxn: [OH](21) + CC=O(99) <=> C[CH]OO(62) origin: R_Addition_MultipleBond
rxn: [OH](21) + CC=O(99) <=> CC([O])O(150) origin: R_Addition_MultipleBond
rxn: [OH](21) + CCC(38) <=> O(40) + C[CH]C(28) origin: H_Abstraction
rxn: C[CH]C(28) + CCCCCOO(89) <=> CCC(38) + CCCCCO[O](69) origin: H_Abstraction
rxn: C[CH]O(122) + CCO[O](34) <=> CC=O(99) + CCOO(71) origin: Disproportionation
rxn: CC[O](96) + CCO[O](34) <=> CC=O(99) + CCOO(71) origin: Disproportionation
rxn: C[CH]O(122) + C[CH]OO(62) <=> CC=O(99) + CCOO(71) origin: Disproportionation
rxn: CC[O](96) + C[CH]OO(62) <=> CC=O(99) + CCOO(71) origin: Disproportionation
rxn: C[CH]O(122) + [CH2]COO(68) <=> CC=O(99) + CCOO(71) origin: Disproportionation
rxn: CC[O](96) + [CH2]COO(68) <=> CC=O(99) + CCOO(71) origin: Disproportionation
rxn: CC=O(99) + CCCC(C)[O](61) <=> C=C[O](120) + CCCC(C)O(107) origin: H_Abstraction
rxn: CC=O(99) + CCCC(C)[O](61) <=> C[C]=O(121) + CCCC(C)O(107) origin: H_Abstraction
rxn: C[CH]C(28) + CCCC(C)O(107) <=> CCC(38) + CCCC(C)[O](61) origin: H_Abstraction
rxn: CCC(38) + CCCC(C)[O](61) <=> [CH2]CC(5) + CCCC(C)O(107) origin: H_Abstraction
rxn: C[CH]O(122) + C[CH]C(28) <=> CC=O(99) + CCC(38) origin: Disproportionation
rxn: C[CH]O(122) + [CH2]CC(5) <=> CC=O(99) + CCC(38) origin: Disproportionation
rxn: CC[O](96) + C[CH]C(28) <=> CC=O(99) + CCC(38) origin: Disproportionation
rxn: CC[O](96) + [CH2]CC(5) <=> CC=O(99) + CCC(38) origin: Disproportionation
rxn: C[CH]C(28) + CCCC(C)OO(58) <=> CCC(38) + C[CH]CC(C)OO(52) origin: H_Abstraction
rxn: C[CH]C(28) + CC(CC(C)OO)OO(171) <=> CCC(38) + CC(CC(C)OO)O[O](148) origin: H_Abstraction
rxn: CCC(38) + CC[CH]C(C)OO(50) <=> C[CH]C(28) + CCCC(C)OO(58) origin: H_Abstraction
rxn: CCC(38) + C[CH]C(CC)OO(31) <=> C[CH]C(28) + CCC(CC)OO(23) origin: H_Abstraction
rxn: C[CH]CC(C)OO(52) + CC(CC(C)OO)O[O](148) <=> CC=CC(C)OO(145) + CC(CC(C)OO)OO(171) origin: Disproportionation
rxn: C[CH]CC(C)OO(52) + CC(CC(C)OO)O[O](148) <=> C=CCC(C)OO(146) + CC(CC(C)OO)OO(171) origin: Disproportionation
rxn: CCC(CC)OOO(114) + CC(CC(C)OO)OO(171) <=> O(40) + CCC(CC)O[O](19) + CC(CC(C)OO)O[O](148) origin: Bimolec_Hydroperoxide_Decomposition
rxn: CCCC(C)OOO(109) + CC(CC(C)OO)OO(171) <=> O(40) + CCCC(C)O[O](33) + CC(CC(C)OO)O[O](148) origin: Bimolec_Hydroperoxide_Decomposition
rxn: CCCCCOOO(115) + CC(CC(C)OO)OO(171) <=> O(40) + CCCCCO[O](69) + CC(CC(C)OO)O[O](148) origin: Bimolec_Hydroperoxide_Decomposition
rxn: CCCO[O](35) + CC(CC(C)OO)O[O](148) <=> oxygen(1) + CCC[O](94) + CC([O])CC(C)OO(172) origin: Peroxyl_Disproportionation
rxn: CCCO[O](35) + CC(CC(C)OO)O[O](148) <=> oxygen(1) + CCC=O(128) + CC(O)CC(C)OO(173) origin: Peroxyl_Termination
rxn: CCCO[O](35) + CC(CC(C)OO)O[O](148) <=> oxygen(1) + CCCO(127) + CC(=O)CC(C)OO(154) origin: Peroxyl_Termination
rxn: [OH](21) + CC(CC(C)OO)OO(171) <=> O(40) + C[C](CC(C)OO)OO(176) origin: H_Abstraction
rxn: [OH](21) + CC(CC(C)OO)OO(171) <=> O(40) + CC([CH]C(C)OO)OO(155) origin: H_Abstraction
rxn: [OH](21) + CC(CC(C)OO)OO(171) <=> O(40) + [CH2]C(CC(C)OO)OO(156) origin: H_Abstraction
rxn: [OH](21) + CC=CCC(16) <=> O(40) + C[CH]C=CC(181) origin: H_Abstraction
rxn: [OH](21) + CC=CCC(16) <=> O(40) + [CH2]CC=CC(182) origin: H_Abstraction
rxn: [OH](21) + CC=CCC(16) <=> O(40) + [CH2]C=CCC(77) origin: H_Abstraction
rxn: [OH](21) + CC=CCC(16) <=> O(40) + CC=[C]CC(184) origin: H_Abstraction
rxn: [OH](21) + CC=CCC(16) <=> O(40) + C[C]=CCC(185) origin: H_Abstraction
rxn: [OH](21) + CC=CCC(16) <=> C[CH]C(O)CC(202) origin: R_Addition_MultipleBond
rxn: [OH](21) + CC=CCC(16) <=> CC[CH]C(C)O(102) origin: R_Addition_MultipleBond
rxn: [OH](21) + CCC1OC1C(160) <=> O(40) + CC[C]1OC1C(192) origin: H_Abstraction
rxn: [OH](21) + CCC1OC1C(160) <=> O(40) + CCC1O[C]1C(194) origin: H_Abstraction
rxn: [OH](21) + CCC1OC1C(160) <=> O(40) + C[CH]C1OC1C(196) origin: H_Abstraction
rxn: [OH](21) + CCC1OC1C(160) <=> O(40) + [CH2]C1OC1CC(197) origin: H_Abstraction
rxn: [OH](21) + CCC1OC1C(160) <=> O(40) + [CH2]CC1OC1C(198) origin: H_Abstraction
rxn: C[CH]OO(62) + C[CH]CCC(11) <=> CCOO(71) + CC=CCC(16) origin: Disproportionation
rxn: C[CH]OO(62) + CC[CH]CC(7) <=> CCOO(71) + CC=CCC(16) origin: Disproportionation
rxn: [CH2]COO(68) + C[CH]CCC(11) <=> CCOO(71) + CC=CCC(16) origin: Disproportionation
rxn: [CH2]COO(68) + CC[CH]CC(7) <=> CCOO(71) + CC=CCC(16) origin: Disproportionation
rxn: CCCC(C)[O](61) + CC(CC(C)OO)OO(171) <=> CC(CC(C)OO)O[O](148) + CCCC(C)O(107) origin: H_Abstraction
rxn: CCCC(C)[O](61) + CC(CC(C)OO)OO(171) <=> C[C](CC(C)OO)OO(176) + CCCC(C)O(107) origin: H_Abstraction
rxn: CCCC(C)[O](61) + CC(CC(C)OO)OO(171) <=> CC([CH]C(C)OO)OO(155) + CCCC(C)O(107) origin: H_Abstraction
rxn: CCCC(C)[O](61) + CC(CC(C)OO)OO(171) <=> [CH2]C(CC(C)OO)OO(156) + CCCC(C)O(107) origin: H_Abstraction
rxn: CC=CCC(16) + CCCC(C)[O](61) <=> C[CH]C=CC(181) + CCCC(C)O(107) origin: H_Abstraction
rxn: CC=CCC(16) + CCCC(C)[O](61) <=> [CH2]CC=CC(182) + CCCC(C)O(107) origin: H_Abstraction
rxn: CC=CCC(16) + CCCC(C)[O](61) <=> [CH2]C=CCC(77) + CCCC(C)O(107) origin: H_Abstraction
rxn: CC=[C]CC(184) + CCCC(C)O(107) <=> CC=CCC(16) + CCCC(C)[O](61) origin: H_Abstraction
rxn: C[C]=CCC(185) + CCCC(C)O(107) <=> CC=CCC(16) + CCCC(C)[O](61) origin: H_Abstraction
rxn: CCC1OC1C(160) + CCCC(C)[O](61) <=> CC[C]1OC1C(192) + CCCC(C)O(107) origin: H_Abstraction
rxn: CCC1OC1C(160) + CCCC(C)[O](61) <=> CCC1O[C]1C(194) + CCCC(C)O(107) origin: H_Abstraction
rxn: CCC1OC1C(160) + CCCC(C)[O](61) <=> C[CH]C1OC1C(196) + CCCC(C)O(107) origin: H_Abstraction
rxn: CCC1OC1C(160) + CCCC(C)[O](61) <=> [CH2]C1OC1CC(197) + CCCC(C)O(107) origin: H_Abstraction
rxn: CCC1OC1C(160) + CCCC(C)[O](61) <=> [CH2]CC1OC1C(198) + CCCC(C)O(107) origin: H_Abstraction
rxn: C[CH]C(28) + C[CH]CCC(11) <=> CCC(38) + CC=CCC(16) origin: Disproportionation
rxn: C[CH]C(28) + CC[CH]CC(7) <=> CCC(38) + CC=CCC(16) origin: Disproportionation
rxn: OOO(113) + CC(CC(C)OO)OO(171) <=> [O]O(13) + O(40) + CC(CC(C)OO)O[O](148) origin: Bimolec_Hydroperoxide_Decomposition
The tested model has 10 reactions that the original model does not have. ❌
rxn: CCCC(C)[O](61) + C[CH]CC(C)OO(52) <=> CC=CC(C)OO(109) + CCCC(C)O(128) origin: Disproportionation
rxn: CCCC(C)[O](61) + C[CH]CC(C)OO(52) <=> C=CCC(C)OO(110) + CCCC(C)O(128) origin: Disproportionation
rxn: CCCC(C)[O](61) + C[CH]CC(C)OO(52) <=> CCCC(C)=O(49) + CCCC(C)OO(58) origin: Disproportionation
rxn: CCCC(C)[O](61) + CC[CH]C(C)OO(50) <=> CCC=C(C)OO(116) + CCCC(C)O(128) origin: Disproportionation
rxn: CCCC(C)[O](61) + CC[CH]C(C)OO(50) <=> CC=CC(C)OO(109) + CCCC(C)O(128) origin: Disproportionation
rxn: CCCC(C)[O](61) + CC[CH]C(C)OO(50) <=> CCCC(C)=O(49) + CCCC(C)OO(58) origin: Disproportionation
rxn: CCCC(C)[O](61) + C[CH]C(CC)OO(30) <=> CC=C(CC)OO(120) + CCCC(C)O(128) origin: Disproportionation
rxn: CCCC(C)[O](61) + C[CH]C(CC)OO(30) <=> C=CC(CC)OO(121) + CCCC(C)O(128) origin: Disproportionation
rxn: CCCC(C)[O](61) + C[CH]C(CC)OO(30) <=> CCCC(C)=O(49) + CCC(CC)OO(21) origin: Disproportionation
rxn: [CH2]CC(5) + CC(CC(C)OO)O[O](125) <=> C=CC(26) + CC(CC(C)OO)OO(131) origin: Disproportionation

Observables Test Case: RMS_CSTR_liquid_oxidation Comparison

The following observables did not match:

❌ Observable species CCCCC varied by more than 0.100 on average between old model pentane(2) and new model pentane(2) in condition 1.

⚠️ The following reaction conditions had some discrepancies:
Condition 1:
Reactor Type: IdealGasReactor
Reaction Time: 1000 s
T0: 600 K
P0: 1 bar
Initial Mole Fractions: {'CCCCC': 0.9, '[O][O]': 0.1}

RMS_CSTR_liquid_oxidation Failed Observable Testing ❌

beep boop this comment was written by a bot 🤖

Hopefully fixes #1823 and #1336

This whole procedure is probably a bit slow and could 
probably be optimized, or done less often. 
If it matters (don't do it before profiling).
There's a model from Klippenstein/Glarborg, with three
duplicate reactions, two PDep and one not.
The previous implementation would notice that because 
one is PDep and one is not, it would REMOVE the DUPLICATE
flag, even though there's a THIRD reaction that means 
the DUPLICATE flag should remain.

Now we just log a warning and leave the flag alone.
The new code doesn't remove duplicate reaction marks, so 
this test is marked as a work in progress.

Unless we decide the current behavior is ideal, in which case
we can change the expected outcomes and make this pass.
@github-actions
Copy link

Regression Testing Results

Traceback (most recent call last):
File "/home/runner/work/RMG-Py/RMG-Py/rmgpy/tools/diffmodels.py", line 348, in execute
surface_path1 = kwargs['surface_path1']
KeyError: 'surface_path1'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File "/usr/share/miniconda3/envs/rmg_env/lib/python3.7/site-packages/julia/pseudo_python_cli.py", line 308, in main
python(**vars(ns))
File "/usr/share/miniconda3/envs/rmg_env/lib/python3.7/site-packages/julia/pseudo_python_cli.py", line 59, in python
scope = runpy.run_path(script, run_name="main")
File "/usr/share/miniconda3/envs/rmg_env/lib/python3.7/runpy.py", line 263, in run_path
pkg_name=pkg_name, script_name=fname)
File "/usr/share/miniconda3/envs/rmg_env/lib/python3.7/runpy.py", line 96, in _run_module_code
mod_name, mod_spec, pkg_name, script_name)
File "/usr/share/miniconda3/envs/rmg_env/lib/python3.7/runpy.py", line 85, in _run_code
exec(code, run_globals)
File "scripts/checkModels.py", line 296, in
error = main()
File "scripts/checkModels.py", line 78, in main
error = check(name, bench_chemkin, bench_species_dict, test_chemkin, test_species_dict)
File "scripts/checkModels.py", line 92, in check
execute(benchChemkin, benchSpeciesDict, bench_thermo, testChemkin, testSpeciesDict, test_thermo, **kwargs)
File "/home/runner/work/RMG-Py/RMG-Py/rmgpy/tools/diffmodels.py", line 359, in execute
model2.species, model2.reactions = load_chemkin_file(chemkin2, species_dict2, thermo_path=thermo2)
File "rmgpy/chemkin.pyx", line 1055, in rmgpy.chemkin.load_chemkin_file
_process_duplicate_reactions(reaction_list)
File "rmgpy/chemkin.pyx", line 1153, in rmgpy.chemkin._process_duplicate_reactions
raise ChemkinError('Mixed kinetics for duplicate reaction {0}.'.format(reaction))
rmgpy.exceptions.ChemkinError: Mixed kinetics for duplicate reaction O2(2) + HOSO2(26) <=> SO3(16) + HO2(10).
⚠️ One or more regression tests failed.
Please download the failed results and run the tests locally or check the log to see why.

Detailed regression test results.

Regression test aromatics:

Reference: Execution time (DD:HH:MM:SS): 00:00:01:17
Current: Execution time (DD:HH:MM:SS): 00:00:01:22
Reference: Memory used: 2088.43 MB
Current: Memory used: 2123.20 MB

aromatics Passed Core Comparison ✅

Original model has 15 species.
Test model has 15 species. ✅
Original model has 11 reactions.
Test model has 11 reactions. ✅

aromatics Passed Edge Comparison ✅

Original model has 106 species.
Test model has 106 species. ✅
Original model has 358 reactions.
Test model has 358 reactions. ✅

Observables Test Case: Aromatics Comparison

✅ All Observables varied by less than 0.500 on average between old model and new model in all conditions!

aromatics Passed Observable Testing ✅

Regression test liquid_oxidation:

Reference: Execution time (DD:HH:MM:SS): 00:00:02:39
Current: Execution time (DD:HH:MM:SS): 00:00:02:45
Reference: Memory used: 2229.71 MB
Current: Memory used: 2227.27 MB

liquid_oxidation Failed Core Comparison ❌

Original model has 37 species.
Test model has 37 species. ✅
Original model has 216 reactions.
Test model has 215 reactions. ❌
The original model has 1 reactions that the tested model does not have. ❌
rxn: CCO[O](29) <=> [OH](22) + CC=O(69) origin: intra_H_migration

liquid_oxidation Failed Edge Comparison ❌

Original model has 202 species.
Test model has 202 species. ✅
Original model has 1613 reactions.
Test model has 1613 reactions. ✅
The original model has 1 reactions that the tested model does not have. ❌
rxn: CCO[O](29) <=> [OH](22) + CC=O(69) origin: intra_H_migration
The tested model has 1 reactions that the original model does not have. ❌
rxn: CCO[O](31) <=> C[CH]OO(73) origin: intra_H_migration

Non-identical kinetics! ❌
original:
rxn: CCCCCO[O](104) + CC(CC(C)OO)O[O](103) <=> oxygen(1) + CCCCC[O](127) + CC([O])CC(C)OO(129) origin: Peroxyl_Disproportionation
tested:
rxn: CCCCCO[O](103) + CC(CC(C)OO)O[O](104) <=> oxygen(1) + CCCCC[O](128) + CC([O])CC(C)OO(127) origin: Peroxyl_Disproportionation

k(1bar) 300K 400K 500K 600K 800K 1000K 1500K 2000K
k(T): 7.79 7.46 7.21 7.00 6.67 6.41 5.94 5.60
k(T): 3.52 4.27 4.71 5.01 5.39 5.61 5.91 6.06

kinetics: Arrhenius(A=(3.18266e+20,'cm^3/(mol*s)'), n=-2.694, Ea=(0.053,'kcal/mol'), T0=(1,'K'), comment="""Estimated from node Root_Ext-5R-R_7R!H->C_N-7C-inRing Ea raised from 0.0 to 0.2 kJ/mol to match endothermicity of reaction.""")
kinetics: Arrhenius(A=(3.2e+12,'cm^3/(mol*s)'), n=0, Ea=(4.096,'kcal/mol'), T0=(1,'K'), comment="""Estimated from node Root_Ext-5R-R_7R!H->C_N-7C-inRing_Ext-5R-R""")
kinetics: Estimated from node Root_Ext-5R-R_7R!H->C_N-7C-inRing
Ea raised from 0.0 to 0.2 kJ/mol to match endothermicity of reaction.
kinetics: Estimated from node Root_Ext-5R-R_7R!H->C_N-7C-inRing_Ext-5R-R

Observables Test Case: liquid_oxidation Comparison

✅ All Observables varied by less than 0.100 on average between old model and new model in all conditions!

liquid_oxidation Passed Observable Testing ✅

Regression test nitrogen:

Reference: Execution time (DD:HH:MM:SS): 00:00:01:38
Current: Execution time (DD:HH:MM:SS): 00:00:01:44
Reference: Memory used: 2214.17 MB
Current: Memory used: 2225.17 MB

nitrogen Failed Core Comparison ❌

Original model has 41 species.
Test model has 41 species. ✅
Original model has 359 reactions.
Test model has 360 reactions. ❌
The tested model has 1 reactions that the original model does not have. ❌
rxn: HNO(48) + HCO(13) <=> NO(38) + CH2O(18) origin: H_Abstraction

nitrogen Failed Edge Comparison ❌

Original model has 132 species.
Test model has 132 species. ✅
Original model has 995 reactions.
Test model has 997 reactions. ❌
The tested model has 2 reactions that the original model does not have. ❌
rxn: HNO(48) + HCO(13) <=> NO(38) + CH2O(18) origin: H_Abstraction
rxn: HON(T)(83) + HCO(13) <=> NO(38) + CH2O(18) origin: Disproportionation

Observables Test Case: NC Comparison

✅ All Observables varied by less than 0.200 on average between old model and new model in all conditions!

nitrogen Passed Observable Testing ✅

Regression test oxidation:

Reference: Execution time (DD:HH:MM:SS): 00:00:02:40
Current: Execution time (DD:HH:MM:SS): 00:00:02:53
Reference: Memory used: 2080.02 MB
Current: Memory used: 2088.89 MB

oxidation Passed Core Comparison ✅

Original model has 59 species.
Test model has 59 species. ✅
Original model has 694 reactions.
Test model has 694 reactions. ✅

oxidation Passed Edge Comparison ✅

Original model has 230 species.
Test model has 230 species. ✅
Original model has 1526 reactions.
Test model has 1526 reactions. ✅

Observables Test Case: Oxidation Comparison

✅ All Observables varied by less than 0.500 on average between old model and new model in all conditions!

oxidation Passed Observable Testing ✅

Regression test sulfur:

Reference: Execution time (DD:HH:MM:SS): 00:00:01:04
Current: Execution time (DD:HH:MM:SS): 00:00:01:07
Reference: Memory used: 2185.76 MB
Current: Memory used: 2184.89 MB

sulfur Passed Core Comparison ✅

Original model has 27 species.
Test model has 27 species. ✅
Original model has 74 reactions.
Test model has 74 reactions. ✅

sulfur Failed Edge Comparison ❌
Observables Test Case: SO2 Comparison

✅ All Observables varied by less than 0.100 on average between old model and new model in all conditions!

sulfur Passed Observable Testing ✅

Regression test superminimal:

Reference: Execution time (DD:HH:MM:SS): 00:00:00:40
Current: Execution time (DD:HH:MM:SS): 00:00:00:42
Reference: Memory used: 2342.11 MB
Current: Memory used: 2347.27 MB

superminimal Passed Core Comparison ✅

Original model has 13 species.
Test model has 13 species. ✅
Original model has 21 reactions.
Test model has 21 reactions. ✅

superminimal Passed Edge Comparison ✅

Original model has 18 species.
Test model has 18 species. ✅
Original model has 28 reactions.
Test model has 28 reactions. ✅

Regression test RMS_constantVIdealGasReactor_superminimal:

Reference: Execution time (DD:HH:MM:SS): 00:00:03:05
Current: Execution time (DD:HH:MM:SS): 00:00:03:17
Reference: Memory used: 2751.63 MB
Current: Memory used: 2744.27 MB

RMS_constantVIdealGasReactor_superminimal Passed Core Comparison ✅

Original model has 13 species.
Test model has 13 species. ✅
Original model has 19 reactions.
Test model has 19 reactions. ✅

RMS_constantVIdealGasReactor_superminimal Passed Edge Comparison ✅

Original model has 13 species.
Test model has 13 species. ✅
Original model has 19 reactions.
Test model has 19 reactions. ✅

Observables Test Case: RMS_constantVIdealGasReactor_superminimal Comparison

✅ All Observables varied by less than 0.100 on average between old model and new model in all conditions!

RMS_constantVIdealGasReactor_superminimal Passed Observable Testing ✅

Regression test RMS_CSTR_liquid_oxidation:

Reference: Execution time (DD:HH:MM:SS): 00:00:07:38
Current: Execution time (DD:HH:MM:SS): 00:00:08:04
Reference: Memory used: 2725.94 MB
Current: Memory used: 2723.19 MB

RMS_CSTR_liquid_oxidation Failed Core Comparison ❌

Original model has 37 species.
Test model has 37 species. ✅
Original model has 232 reactions.
Test model has 233 reactions. ❌
The tested model has 1 reactions that the original model does not have. ❌
rxn: CCO[O](36) <=> [OH](21) + CC=O(62) origin: intra_H_migration

RMS_CSTR_liquid_oxidation Failed Edge Comparison ❌

Original model has 206 species.
Test model has 206 species. ✅
Original model has 1508 reactions.
Test model has 1508 reactions. ✅
The original model has 2 reactions that the tested model does not have. ❌
rxn: CCCO[O](34) <=> CC[CH]OO(51) origin: intra_H_migration
rxn: CCO[O](36) <=> C[CH]OO(62) origin: intra_H_migration
The tested model has 2 reactions that the original model does not have. ❌
rxn: CCO[O](36) <=> [OH](21) + CC=O(62) origin: intra_H_migration
rxn: CCCO[O](35) <=> [OH](21) + CCC=O(50) origin: intra_H_migration

Observables Test Case: RMS_CSTR_liquid_oxidation Comparison

✅ All Observables varied by less than 0.100 on average between old model and new model in all conditions!

RMS_CSTR_liquid_oxidation Passed Observable Testing ✅

beep boop this comment was written by a bot 🤖

@JacksonBurns
Copy link
Contributor

Regression Testing Results

Traceback (most recent call last): File "/home/runner/work/RMG-Py/RMG-Py/rmgpy/tools/diffmodels.py", line 348, in execute surface_path1 = kwargs['surface_path1'] KeyError: 'surface_path1'

During handling of the above exception, another exception occurred:

Traceback (most recent call last): File "/usr/share/miniconda3/envs/rmg_env/lib/python3.7/site-packages/julia/pseudo_python_cli.py", line 308, in main python(**vars(ns)) File "/usr/share/miniconda3/envs/rmg_env/lib/python3.7/site-packages/julia/pseudo_python_cli.py", line 59, in python scope = runpy.run_path(script, run_name="main") File "/usr/share/miniconda3/envs/rmg_env/lib/python3.7/runpy.py", line 263, in run_path pkg_name=pkg_name, script_name=fname) File "/usr/share/miniconda3/envs/rmg_env/lib/python3.7/runpy.py", line 96, in _run_module_code mod_name, mod_spec, pkg_name, script_name) File "/usr/share/miniconda3/envs/rmg_env/lib/python3.7/runpy.py", line 85, in _run_code exec(code, run_globals) File "scripts/checkModels.py", line 296, in error = main() File "scripts/checkModels.py", line 78, in main error = check(name, bench_chemkin, bench_species_dict, test_chemkin, test_species_dict) File "scripts/checkModels.py", line 92, in check execute(benchChemkin, benchSpeciesDict, bench_thermo, testChemkin, testSpeciesDict, test_thermo, **kwargs) File "/home/runner/work/RMG-Py/RMG-Py/rmgpy/tools/diffmodels.py", line 359, in execute model2.species, model2.reactions = load_chemkin_file(chemkin2, species_dict2, thermo_path=thermo2) File "rmgpy/chemkin.pyx", line 1055, in rmgpy.chemkin.load_chemkin_file _process_duplicate_reactions(reaction_list) File "rmgpy/chemkin.pyx", line 1153, in rmgpy.chemkin._process_duplicate_reactions raise ChemkinError('Mixed kinetics for duplicate reaction {0}.'.format(reaction)) rmgpy.exceptions.ChemkinError: Mixed kinetics for duplicate reaction O2(2) + HOSO2(26) <=> SO3(16) + HO2(10). ⚠️ One or more regression tests failed. Please download the failed results and run the tests locally or check the log to see why.

Detailed regression test results.
beep boop this comment was written by a bot 🤖

This is a problem with either diffmodels.py or chemkin.pyx, not the regression testing action. Not sure what could be causing it though.

Copy link

This pull request is being automatically marked as stale because it has not received any interaction in the last 90 days. Please leave a comment if this is still a relevant pull request, otherwise it will automatically be closed in 30 days.

@github-actions github-actions bot added the stale stale issue/PR as determined by actions bot label Nov 17, 2023
@rwest
Copy link
Member Author

rwest commented Nov 17, 2023

Worth keeping alive and merging??

@github-actions github-actions bot removed the stale stale issue/PR as determined by actions bot label Nov 18, 2023
Copy link

This pull request is being automatically marked as stale because it has not received any interaction in the last 90 days. Please leave a comment if this is still a relevant pull request, otherwise it will automatically be closed in 30 days.

@github-actions github-actions bot added stale stale issue/PR as determined by actions bot and removed stale stale issue/PR as determined by actions bot labels Feb 16, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants