-
Notifications
You must be signed in to change notification settings - Fork 230
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
What is the difference between toleranceMoveToCore and toleranceInterruptSimulation? #166
Comments
If you aren't pruning, there is no need to have these differ, and they used to always be the same. When we introduced pruning, we wanted to avoid pruning things that have low flux early in the simulation but are important later on, so we daredn't make pruning decisions until we have run a simulation to completeness. If we keep interrupting the simulation, this will never happen, and we will never prune. We therefore set another tolerance: interruptsimulation. Set this to infinity if you always want to run to completeness. However, if your leaking edge flux is really very high, your simulation probably can't be trusted... So some number that is high but not too high is a good choice. How high depends on how important it is for you to prune. This should be documented somewhere. Is it not? |
When choosing to prune, as you mentioned, we have to run to completeness. Just curious about the procedure of picking prunable species, we need rank the edge fluxes at goal conversion or rank the peak edge fluxes along simulation time? |
I believe we rank based on peak relative flux reached at any point in the simulation. (Nb. The flux it is relative to changes throughout the simulation too) |
I was on the way to open a new issue to understand their differences but this one is still running. Like this we could avoid user errors like the one I am pointing here #299 |
Updated in latest documentation and the warnings for how to set them are now in the code. (see the issue above) |
I am embarrassed to be asking this question, but can someone explain to me the difference in the two values used in the input.py file?
I see the logging statement:
Conducting simulation of reaction system 1...
At time 2.0000e-15 s, species [CH2]CCCCCCC(14) exceeded the minimum rate for moving to model core
Characteristic rate: 7.5653e-08 mol/m^3_s
[CH2]CCCCCCC(14) rate: 1.5641e-10 mol/m^3_s (0.002067)
At time 8.3886e-09 s, species CCCCCCC(C)OO exceeded the minimum rate for simulation interruption
Characteristic rate: 7.5653e-08 mol/m^3_s
CCCCCCC(C)OO rate: 9.0736e-09 mol/m^3_s (0.1199)
But only the first species gets added to the core. So what is the purpose of the toleranceInterruptSimulation?
The text was updated successfully, but these errors were encountered: