Closed BenGalewsky closed 1 year ago
@BenGalewsky An additional functionality that I realise would make this process more user friendly, is to allow reporting of mass and volume in milligrams and microliters (what is often used in the lab); and if detected, make the conversion of x mg = x/1000 g, and y uL = y/1000 mL for ease of calculation (since density and Mwt values are in g/mL)
Other edits:
@stayal2 can contact me for example input data and expected output
@BenGalewsky An additional functionality that I realise would make this process more user friendly, is to allow reporting of mass and volume in milligrams and microliters (what is often used in the lab); and if detected, make the conversion of x mg = x/1000 g, and y uL = y/1000 mL for ease of calculation (since density and Mwt values are in g/mL)
How would we know? Should we just change the spreadsheet to specify those units and researchers would have to do conversion if they are using anything other that mg and uL?
@BenGalewsky An additional functionality that I realise would make this process more user friendly, is to allow reporting of mass and volume in milligrams and microliters (what is often used in the lab); and if detected, make the conversion of x mg = x/1000 g, and y uL = y/1000 mL for ease of calculation (since density and Mwt values are in g/mL)
How would we know? Should we just change the spreadsheet to specify those units and researchers would have to do conversion if they are using anything other that mg and uL?
Yes I think that would make more sense than reporting g and mL (since in most cases those aren't being measured out). In that case, all mass and volume variables in the formulae need to be defined as the input/1000
As an experiment publisher I want to provide measured values (mass or volume of compounds used) and have Clowder convert to conventional concentrations, ratios, and mol% values so others can use my data in their analysis
Description:
The data entry spreadsheet has collects data for the various components of an experiment:
Each of these components need to record the exact amounts used in the experiment. Some compounds are expressed in mass (in grams) or volume (in milliliters). In the spreadsheet there will be fields for mass and volume. The user will fill in one value and leave the other blank. There are some values where only mass or volume make sense. Those tabs in the spreadsheet will only have one column.
For analysis, however people will need these values to be converted to measures of concentration, ratios between compounds, and mole %.
Chemistry Data
The conversions require precise measures of the compound's molecular weight and density. We will be using a web service called ChemSpider to retrieve these values from a given SMILES string which will be included in the spreadsheet for the compound.
Obtaining Data from ChemSpider
We will use the python bindings for the ChemSpider API, chemspipy. It requires an access token which will be obtained from an environment variable.
Density
In some cases, the service doesn't provide a single value for density of the compound. Instead it lists several experimentally derived values. See this example.
For these cases we will want to compute the average of the provided densities and round to the hundredths place.
Calculations
VARIABLES FROM THE SPREADSHEET:
PROPERTIES FROM CHEMSPIDER:
FORMULAE:
Tasks
None
. Throw an exception otherwise.