Releases: RNA-FRETools/MASH-FRET
v.1.3.4
What's Changed
New functionalities by @mca-sh
- State-finding method
STaSI+vbFRET-1D
and sorting datastate lifetimes
in #110 - Implement histogram-based projects in #112
- Resampling trajectories from TP's panel "Re-sampling" in #117
- Add zoom function in Mapping tool in #126
Improvements by @mca-sh
- Allows math expressions in online doc with mathjax3 in #111
- Workaround ML-DPH overestimation due to overbinning of dwell time histogram in #116
- Replacement of problematic project field
frame_rate
bysampling_time
in #117 - Adapt TA test routine to histogram-based projects in #124
Bug fixes by @mca-sh
- Fix Liquid Exception when compiling doc pages in #108
- Fix state bin and unbreak doc in #109
- Various bug fixes in #110
- Correct exclusion of doublon coordinates after channel transformation in #118
- Handle error when an .avi file is used for intensity integration in #122
- Correct reference points leaking in mapping tool in #128
Thanks to @snguyen and @Befazl for reporting issues and/or requesting new features.
Full Changelog: v1.3.3.3...v.1.3.4
MASH-FRET 1.3.3.3
What's Changed
New functionalities by @mca-sh in #107
- Generating pixel intensity trajectory by click on average image in Video processing (VP)
- TDP options
gauss.
andsingle count
in Trace manager (TM) - Auto sorting (AS) - Option
hold scale
for intensity trajectory plots in Trace processing (TP) - Project merging available for projects having different laser wavelengths and emitter labels
Bug fixes by @mca-sh in #107
- Fix erroneously unfulfilled requirement of state sequences for molecule sorting in TM.
- Fix bug occurring when switching to Histogram analysis (HA) or Transition analysis (TA) after changing the molecule selection or tags.
- Correct default histogram limits for total intensity data in TM-AS.
- Correct project selection when merging projects.
- Correct update of the value of the
BOBA
checkbox in Histogram analysis.
Improvements by @mca-sh in #107
- Automatically save tag names and colors as default settings after pressing button
TO MASH
in TM - Overview. - Automatically resets processing parameters that truncate trajectory lengths when creating a new project.
- Make panel Sample management in TP a regular non-collapsible panel.
Thanks to @Befazl and @nsivan16 for feature requests and bug reports.
Full Changelog: v1.3.3.2...v1.3.3.3
MASH-FRET 1.3.3.2
What's Changed
New functionalities
Bug fixes
- Fix project merging bug when molecule tag names are matching parts of other tag names by @mca-sh in #88
- Fix trace export bug in TP when not FRET calculation is defined by @mca-sh in #92
- Fix calculation of average image for tif files by @mca-sh (fix from @AndersBarth) in #97
- Fix bug in Simulation when epsilon-negative photon counts are generated by @mca-sh in #103
- Adapt memory allocation to MACOS by @mca-sh (fix from @AndersBarth) in #98
- Correct exclusion of molecule coordinates and other minor stuff by @mca-sh in #101
Improvements
- Review simulation presets to import state lifetimes by @mca-sh (with @LeonieUniFR) in #105
- Allows merging of projects with different video sampling times by @mca-sh in #91
- Updates ML-DPH and BW analysis as in DPH article in preparation by @mca-sh in #102
Full Changelog: v1.3.3.1...v1.3.3.2
MASH-FRET v1.3.3.1
MASH-FRET v1.3.3
MASH-FRET v1.3.2
Here is a release note:
New functionalities
-
Estimation of state degeneracy via exponential fit allows to estimate the optimum fitting model complexity and perform bootstrap fit for all dwell time histograms in one click. Please refer to the dedicated doc sections Workflow and Dwell time histograms for more information.
-
Estimation of state degeneracy via DPH selection allows to obtain an optimum configuration of states including state degeneracy by performing BIC-based model selection on discrete-phase type distributions. Please refer to the dedicated doc sections Workflow and Kinetic model for more information.
-
Kinetic model: This new panel belongs to module Transition analysis and allows to infer the most probable transition rate matrix and associated errors for a given state configuration. It uses the state configuration established from TDP clustering and state degeneracy analysis, and applies the Baum-Welch algorithm to infer the transition probabilities. A set of state sequences is simulated a posteriori to compare with experimental dwell times and validate the given kinetic model. Please refer to the dedicated doc sections Workflow and Kinetic model for more information.
Fixed bugs
Routines
Interface testing
- correct testing of project merging
Simulation
- correct yes/no typo in simulation logs
Video processing
- fix error occurring when importing a .gif file
Trace processing
Project management
- fix error occurring when importing FRET state sequences for more than 1 pair
- correct import of project-associated video (was ignored due to an error in file path)
Single molecule images
- fix error occurring when refocusing on a video that has an uneven number of frames
Plot
- correct empty plot when importing one ASCII file
Transition analysis
State configuration
- correct axes limits when only one BIC value was inferred
Improvements
General
- make compatible with Linux Ubuntu 20.04 distribution
Video processing
Edit and export video
- make unavailable the image filters that use the ITALS library (MATLAB freezes every time: there's an issue with the library)
Routines
Kinsoft challenge analysis
-
adapt the Kinsoft challenge analysis routine to the new kinetic model analysis
-
adapt the Kinsoft challenge analysis routine to known number of states and/or non-gaussian noise
Simulation
Export options
- add state sequences without blurring effect in (*.txt) Traces from simulation files
Trace processing
Project management
- improve communication by handling ill-sized project
Find states
- improve deblurr option by only removing the 1-data-point dwell dwell times that are caught between a higher and a lower state values
- add method
vbFRET-2D
which analyze donor and acceptor intensity as 2D data
Transition analysis
Export
- add files (*.txt) DPH model selection, (*.dt) Dwell times and (*.txt) Kinetic model to export options
State configuration
-
modify GUI to add a "Set" button in order to pick a color for the current cluster (as a replacement to the old *Transition" list)
Dwell time histograms
-
modify GUI to transform the old "State transition rates" panel into the "Dwell time histogram" panel
-
modify parameter structure to store fit parameters for each and all state transitions (fields
kin_start
andkin_res
becomelft_start
andlft_res
to identify the rupture in down-compatibility) -
make available the option to bin state values after clustering
-
improve workflow by making the option to exclude/include first & last dwell times available as a general checkbox rather than in a fit-specific popup
Kinetic model
- improve transformation from dwell times in state sequences by taking into account time averaging
MASH-FRET 1.3.1
Here is a release note:
- Fixed bugs
- Documentation update: add comment to compilation of mex files
Fixed bugs
Video processing
Molecule coordinates
- fix error occurring when importing coordinates files
- correct mex compilation error display when actions are muted
Trace processing
Import
- fix error occurring when importing a project with no FRET pair
Plot
- correct plot bug when importing data from one ASCII file
Routines
Interface testing
- fix error occurring when testing TP interface
- correct warning happening at the end of the simulation interface testing
- correct paths written in test .mash files into relative paths for compatibility between computers
MASH-FRET 1.3.0
Here is a release note:
Requirements
- #56 delete MASH-FRET\default_param.ini before starting MASH the first time
New functionalities
-
#55 Remove blurr states is used on state sequences, to ignore states that dwell only for one time bin. This allows to prevent the detection of blurr states, especially when using vbFRET.
-
#55 Subgroup selection allows to visualize and analyze particular molecule subgroups in modules Histogram analysis and Transition analysis. Molecule subgroups are defined by the tags created and applied in the Trace manager of module Trace processing.
-
#56 Beta correction factor allows to correct stoichiometries from differences in extinction coefficients and excitation intensities between donor and acceptor.
-
#56 ES linear regression allows to calculate gamma and beta factors from global FRET-stoichiometry histograms.
-
#58 State-based molecule sorting is used to sort molecules in panel Auto-sorting of the Trace manager based on states sequences-derived values like the number of states, number of transitions, state transitions and state dwell times. When the same data is used in x- and y-axis and
state values
is selected for both, sorting is performed on the transition density plot. -
#60 Cluster selection with mouse is used to define the starting guess of the cluster configuration by simply drawing shapes (squares, ellipsis or diagonal ellipsis) on the TDP.
-
#60 Simple clustering is a clustering method that allows to cluster transitions without inference using the starting guess as the final cluster configuration.
-
#60 Symmetrical clusters is a constraint applied to the cluster configuration that allows to infer configurations where cluster centers are independent from each other but having a projection on the other side of the TDP diagonal. This offers more flexibility on the cluster configuration without neglecting the inherent symmetry of the TDP.
- #60 Constraint-free clustering allows to infer cluster configurations without any constraint on their positions.
- #62 Test routines are used to check the working status of MASH's interface. MASH's modules and menus are tested separately via the menu bar
Routines > Test interface
. Routine scripts are run on data sets stored in folders$MASH-FRET/source/routines/*/assets
. Generated files are stored in$MASH-FRET/source/routines/*/dump
(logs are registered in file_logs.txt
)
- #62 Data analysis routine is used to analyze a set of intensity-time traces written in ASCII files and is accessible from menu via the menu bar
Routines > Kinsoft challenge
. Run this routine to obtain the FRET state configuration and associated transition rates and probabilities. The routine script is adapted to KinSoft challenge data sets.
- #62 Re-arrange sequences is an option used to build Dwell time histograms in module Transition analysis after cancelling transitions out-of-cluster-ranges or contained in diagonal clusters (low-amplitude jumps, usually due to noise discretization). State sequences are re-built by ignoring these transitions and elongating flanking dwell times.
- #62 Export sample dwell time histograms (pdf) is an export option in Transition analysis that allows to print figures of sample dwell time histogram used in bootstrap fitting and associated fit results to a multi-paged .pdf file
-
#62 Simulation of multiple FRET pairs is a side-tool that allows to simulate systems with multiple FRET pairs and generate sets of intensity-time traces written to ASCII files. The script is available at
$MASH-FRET/tools/SiM_FRET.m
. -
#62 Split trace is a method used to split the intensity-time traces of one molecule in 2 at a defined cutoff position. In this case the right-side portion of the trace is added as a new molecule to the molecule list. This functionality allows to ignore long blinking events or interruptions occurring during the measurement from the analysis.
Improvement
General
- #53 modify GUI by building it programatically in order to remove dependency on MATLAB's "guide" tool and in the perspective of moving MASH from MATLAB to Python.
- #53 speed up calculations of text width using a reference table listing the pixel width of each character.
- #53 adapt text wrapping in control panels by taking into account the width of the sliding bar and figure resizing
- #62 reduce computation time at MASH's start by reviewing wrapping of tooltip strings
Simulation
Molecules
- #53 improve worflow by displaying coordinates imported from pre-set files
- #53 manage conflicts between coordinates imported from presets and from ASCII files and re-sorting coordinates whenever video dimensions or sample size changes
- #53 manage error occurring when the sum of one of the rows/columns in the transition rate matrix is null
- #62 add callbacks to edit fields displaying imported presets/coordinates file that set back file name
- #62 review simulation export by not updating data prior exporting (not necessary, time consumming and incompatible with kinsoft routine when removin f externally blurr states from FRET sequences
- #62 review transition probabiltiies in the simulation procedure by introducing and using the "weighing factors"
- #62 add
trans_prob
preset parameter that allows to import "weighing factors" - #62 add the possibility to use user-defined initial state probabilities
Experimental setup
- #62 modify GUI by adding an import interface for background image
Export options
- #53 make code more robust by using the same functions for simulating data for plot and for export
- #53 make code more robust by using the same functions for writing sira/avi files in simulation
Video processing
Import
- #68 manage import of large sira, gif, pma, sif and tif video files
- #68 adapt import of TIF video files that have empty description field
Trace processing
General
- #60 review FRET and stoichiometry calculations for mutiple FRET pairs by taking into account gamma factors of other FRET pairs and removing dependency on sym toolbox (increases calculation speed!)
Project management
- #56 modify Stoichiometry calculation using the definition used in ES linear regression to be coherent (one FRET pair, one stoichiometry) and restrict choice to defined FRET pairs only
- [#56](https://github.co...
MASH-FRET 1.2.1
Here is a release note:
Fixed bugs
Video processing
- correct calculation of intervalled average image when full-length movie is loaded in memory
Trace processing
Import
- correct import of discretized FRET traces from ASCII files
Find states
- fix error occurring when discretizing FRET and stoichiometry data with STaSI and all but 1 data point were excluded because out-of-range [-0.2;1.2]
Improvement
Trace processing
Sample management
- fix error occurring when exporting ASCII files for a molecule subgroup only
Sub-images
- change default menu to select channels by removing background colors
Factor corrections
- change default menu to select channels by removing background colors
MASH-FRET 1.2
Here is a release note:
Requirements
- Please delete the file
MASH-FRET\default_param.ini
before re-starting MASH
New functionalities
General
- #8 File overwriting settings: settings for handling conflicts during export with existing files can be modified any time by accessing the new menus
Options
>Overwrite files
>Rename
/Overwrite
/Ask
- #40 Help buttons: buttons linked to the on-line documentation are automatically generated at MASH opening for each panel and figure having a documentation section.
Button positioning is standardized and position shifts induced by figure resizing are stabilized.
New help buttons can be added by simply editingMASH-FRET/divers/documentation/setInfosIcons.m
andgetDocLink.m
.
The default icon image file is added to the filedefault_param.ini
.
Video processing
- #8 Export ebFRET: add export option for ebFRET-compatible files to folder
intensities/traces_ebFRET
; see documentation section
Set export options
Trace processing
- #17 Process all molecules: the new
UPDATE ALL
pushbutton allows to process all molecules in the project; see documentation section Process all molecule data - #17 Molecule status settings: allows to select/deselect and tag the current molecule without passing by Trace manager; see documentation section Molecule status
- #37 Multiple tags: allows to define several tags for the same molecule; see documentation sections Molecule status and Molecule selection
- #37 Define tag color: allows to modify the tag color in Trace manager with hexadecimal rgb colors; see documentation section Molecule selection
- #37 Molecule group selection: allows to select/de-select specific tagged molecule subgroup in Trace manager; see documentation section Molecule selection
- #38 Y-axis settings: allows to modify the 2D-histogram y-axis in panel "Overall plot" of Trace manager; see documentation section Overall plot
- #38 Automatic sorting: allows to define and tag molecule subgroups in Trace manager and based on the means, minima, maxima or medians of single molecule time traces, or based on fraction of time the traces or state trajectories spend in a certain intensity/FRET/stoichiometry 1D or 2D range.; see documentation section Automatic sorting
Ranges can be defined by simply clicking on the graph. - #38 Discard all tags: allows to discard tags from all molecules in panel "Molecule selection" of Trace manager; see documentation section Molecule selection
- #39 View sorting on video allows to visualize molecule subgroups on the average video frame in Trace manager. Subgroups are defined by their respective tags or by the molecule selection; see documentation section Video view
- #39 Clickable concatenated trace allows to directly click on the concatenated trace to scroll the panel "Molecule selection" of Trace manager. Selected molecules are indicated on the concatenated trace with a mask; see documentation section Overall plot
Histogram analysis
- #8 Display BIC results: shows a bar plot of BIC for all inferred models; see documentation section Inferred models
Transition analysis
- #9 Multiple models: shows a bar plot of BIC values for all inferred models, allows to display and import any inferred model to panel "State transition rates" for dwell time analysis; see documentation section Clustering results
Command-line tools
- #9 Pre-sets template: the function
createSimPrm.m
serves as a template to build pre-set simulation parameter files and is available atMASH-FRET/createSimPrm.m
; see documentation section Pre-set parameters - #26 FRET expression: the function
buildFretExpr.m
generates the analytic expressions of pair-specific FRET efficiencies as used in MASH for multi-color FRET experiments, and is available atMASH-FRET/buildFretExpr.m
; see documentation section FRET calculations - #26 NExp fitting: the script fits an input dark count distribution with a NExpN distribution and is available at
MASH-FRET/fit_NExpN.m
; see documentation section NExpN- or Gaussian + exponential tail
Improvements
General
Folder structure
- #8 change default destination directories from
movie_processing
,thermodynamic
andtdp_analysis
tovideo_processing
,histogram_analysis
andtransition_analysis
Loading bar
- #8 manage communication by preventing double error popup message
Action panel
- #17 adapt text display in error popups for carriage returns
- #17 manage logs by displaying an action when switching module
- #40 change default action background to lighter colors
- #41 change default folder to save logs from root folder/log to MASH-FRET/log
Project management
- #17 adjust project import by forbidding already-imported projects
- #17 manage logs by displaying proper actions when adding and removing projects
- #17 ,#26 review saving of MASH projects: imitates an immediate load after save
Code structure
- #34 review source code folder structure and
MASH.m
by saving callbacks to separate files in_callbacks
folders
Simulation
Data plot
Video parameters
- #17 adjust order of parameters in panel Camera SNR characteristics and in file
default_param.ini
- #26 change GUI nomenclature for noise model
none
toOffset only
- #12,#26 reduce computation time for NExpN noise generation from 4h to 20min