firasmidani / amiga

Analysis of Microbial Growth Assays

Home Page:https://firasmidani.github.io/amiga/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Omnilog Units

igarrom opened this issue · comments

Hello,
Very useful tool, thank you!
I would like to calculate the growth rate of my biolog data but I don't have the data in OD but in Omnilog Units. Can I still use it? Not sure if the growth rate is going to be properly calculated like that.

AMiGA will accept any value whether OD or Ominlog or any other units. There are a couple of things to note:

1. Extreme values may cause numerical issues.

I have tested AMiGA with values that ranged between 0-1000 and I have not experienced any issues. I believe Omnilog units are within this range. However, if there are any numerical issues, the terminal should communicate warnings or errors related to either GPy or NumPy.

2. By default, AMiGA log-transforms data to compute exponential growth rates.

The current default behavior for AMiGA is to log-transform growth curves so that the estimated growth rates correspond to "exponential growth rates" or "maximum specific growth rate". If I understand correctly, the Omnilog units measure respiration in each well and not necessarily growth. You can analyze Omnilog data using the default behavior but all of your curves will be log-transformed and the estimated growth rates will be "exponential growth rates". This may not be an issue if you assume that respiration rate grows exponentially in parallel with biomass.

Alternatively, I just added a --do-not-log-transform argument for the fit function. The --do-not-log-transform argument has not been fully tested, so if you use it and notice any odd behavior, please open a new issue. However, if you include this argument in your commands, then AMiGA will not log transform your growth curves and the estimated growth rates will be based on the linear (i.e. not log-transformed) curves. Because data is not log-transformed, certain growth parameters should be interpreted differently. For example, lag time is no longer "time needed to enter exponential growth", but rather "the intersection of the tangent line to the derivative function at maximum growth rate and the line parallel to the x axis (i.e. time)".

3. You can adjust the label for the y-axis.

You can adjust the libs/config.py file so that AMiGA plots your 96-well plates with the correct y-axis label.

So you could adjust the corresponding line

config['grid_plot_y_label'] = 'Optical Density'

to

config['grid_plot_y_label'] = 'Omnilog units'