OpenSMFS / FRETBursts

Burst analysis software for single and multi-spot single-molecule FRET (smFRET) data.
https://opensmfs.github.io/FRETBursts/
GNU General Public License v2.0
13 stars 9 forks source link

Inconsistencies between version 0.7+26.g5de603d and 0.5.9 burst search #28

Open mayeshh opened 5 years ago

mayeshh commented 5 years ago

I am testing the FRETBursts development version 0.7+26.g5de603d.dirty against version 0.5.9 becacsue I suspect a bug has been introduced in newer versions of FRETBursts.

I re-ran this analysis notebook using the develpment version of FRETBursts in my FB environment. The corresponding burst results csv files are quite different from the original results.

Using the exact same burst search parameters gives far more bursts when using the ALiX software compared to the development version of FRETBursts by orders of magnitude in some cases. Do you have any insight as to where the bug could be, or is it a bug at all??

tritemio commented 5 years ago

If I had to guess, it may be related to changes in background computations. See the 0.6 release notes:

https://fretbursts.readthedocs.io/en/latest/releasenotes.html#version-0-6-jan-2017

tritemio commented 5 years ago

Also, other changes to background computation were done in 0.7:

https://fretbursts.readthedocs.io/en/latest/releasenotes.html#version-0-7-jul-2018

mayeshh commented 5 years ago

I did the burst search using a constant threshold and I compared it to the original burst search using the same constant threshold. The results did not match, but shouldn't the background calculation be unaffected if you use a constant threshold? The way I understand it is that an SBR burst search using F will be affected by these changes, while the constant threshold should not be. Since I used the same, constant threshold I would expect both versions of FRETBursts to give the same results, or at least similar results. However, that is not the case.

In order to test this, X is asking me to analyze a dummy dataset where the background is constant (1 kHz). The idea is that his burst search using ALiX should match the results of my burst search using FRETBursts.

I tried to do this analysis using a csv file as input but ran into many, many errors when I tried to do the burst search on a simple numpy array... I then tried to just do the burst search 'manually' by using the low-level python code in the notebook, but nb.diff gives an empty array for the dummy data where the background is 1kHz. Do you have any thoughts or suggestions that could help me put this to rest (X is not letting me send the manuscript back without first explaining the difference between your softwares :-( )?

tritemio commented 5 years ago

yes, the constant threshold should be unaffected by background. Let me know if you find the cause of the discrepancy.

tritemio commented 5 years ago

You could start finding the first release where you see the change.