pr-omethe-us / PyKED

Python interface to the ChemKED database format
https://pr-omethe-us.github.io/PyKED/
BSD 3-Clause "New" or "Revised" License
15 stars 15 forks source link

Add a way to express uncertainty #21

Closed bryanwweber closed 7 years ago

bryanwweber commented 8 years ago

We need a way to express uncertainty in measurements in the schema for ChemKED. Format suggestions welcome.

bryanwweber commented 7 years ago

Asymmetric uncertainty cannot be expressed using Pint (which relies on the uncertainties package). If this is ever supported in the future, we can allow upper-uncertainty and lower-uncertainty. Until then, we can only support symmetric uncertainty (which is far more common anyways). See also: https://newton.cx/~peter/2013/04/propagating-uncertainties-the-lazy-and-absurd-way/

kyleniemeyer commented 7 years ago

I'm fine with only supporting symmetric uncertainty for now, because as you say it does seem much more common. Are you proposing allowing specification of separate upper and lower values now, even if we can't handle different values?

I suppose that would be future-proofing it a bit, although we'd need to agree on what to do with different values for now—maybe use the larger of the two?

bryanwweber commented 7 years ago

Actually I'm just making a note that this isn't possible yet, so when I think "Oh, we should have asymmetric uncertainty", I can remind myself it won't work. I made a commit (that I haven't pushed yet) that includes a possible schema for this, but then I deleted that bit of the schema so we have a reference if we want to look at this in the future. I'll put a link to the commit in this issue when I push it.

bryanwweber commented 7 years ago

And if we do want to "support" this, I'd rather raise a NotImplementedError (hence the quotes around "support") rather than try to pick some default value.

kyleniemeyer commented 7 years ago

I think I would rather accept the values provided separately, and just raise a warning about what is being done—we want the ChemKED files to be filled with all information from the experimental results, even if we can't do anything with it yet.

What I don't want is to have to go back and update files once we've added support for this... at least for something like this that we're aware of.