reflectivity / edu_outreach

2 stars 4 forks source link

Create an SLD database #2

Closed tomarnoldess closed 2 years ago

tomarnoldess commented 4 years ago

A reference tool for commonly used SLDs to be available on the website

tomarnoldess commented 4 years ago

This would be a database of references to the use of SLDs in the literature so that one could look up the appropriate SLD for a given material. Contact Thomas Saerbeck (saerbeck@ill.fr) for questions and status.

tomarnoldess commented 4 years ago

Comment from the workshop: Instead of an SLD calculator, create an SLD database which must contain information on how it was obtained and if possible a reference. Tricky, but could be useful, both for x-ray and neutron, i.e. include energies etc.. This could, in time, allow users to have a better feeling and awareness of what the SLDs are and what to be careful about. Content and structure would need to be decided. More complex systems may need further information to raise awareness and highlight subtleties. The database could be an informative guideline (or starting value) and allow cross checking, not a strict analysis tool.

andyfaff commented 4 years ago

I'd find it useful to have:

Then a calculator could take all of that and calculate SLDs for neutrons or x-rays of any energy. A table won't be able to store all SLDs for all x-ray energies.

andyfaff commented 4 years ago

I have a spreadsheet for lipids that a colleague created.

aglavic commented 4 years ago

I think it would be a good idea to create the database with an included SLD calculator that should be code reviewed by everyone. Then we could provide material data from different sources, like crystal structures for density, or measured SLDs. This way we don't need a publication with the SLD to be referenced but any publication that delivers sufficient information to get a valid value.

From my point of you it would also be important to provide it in a database format, that can then easily be used programatically. Maybe a file based database solution would be good, so we could provide it as git repository and programs could use it locally or online. New submissions could be reviewed via pull-requests. For the calculations we could also include the Henke and NIST x-ray and neutron scattering data to be used in the SLD calculator.

andyfaff commented 4 years ago

periodictable (@pkienzle) is an excellent Python package for this purpose, being able to calculate N or X SLDs.

I've just added a directory in the repo to kick things off. I added a spreadsheet which my colleague uses for Lipids. (Disclaimer, we find it useful... YMMV).

I'm thinking of adding a CSV file with values that I use that we can build on.

tomarnoldess commented 4 years ago

Summary of meeting on 16th Sept: It was proposed that @aglavic create a database template with column headings suggested by the group. This would include unconventional descriptions such as CAS numbers and ensure that data is properly referenced. @wpotrzebowski has a proposal for running a server at ESS that can be used to host the database (at least in the short term). I will contact Thomas Saerbeck to make sure what we are proposing is conistent with any work he has already done.

smk78 commented 4 years ago

Such a resource would obviously have use beyond reflectivity. Have you approached CanSAS and/or the IUCr SAS Commission to gauge their interest in involvement?

smk78 commented 4 years ago

Opportunities for leveraging ML/data-mining capability to extract values from the published literature?

tomarnoldess commented 4 years ago

Thanks @smk78, Adrian Rennie is tasked with raising this with canSAS but we hadn't thought of IUCr SAS. Also hadn't got as far as how we populate the database. Happy to receive any assistance that can be offered.

smk78 commented 4 years ago

Once you have a database set up, you could run it a bit like the STFC ePubs database or the SasView Model Marketplace, so you have registered users (keeps the bots out) and allow those users to create entries but those entries are visibly tagged as to whether anyone has verified them or not.

RichardHeenan commented 4 years ago

The tricky part of using sld's is often getting good values for parts of a molecule, e.g. for the head and tail of a surfactant. But we need to know just what is or should be included in the head (how much hydration water, how to allow for the hydrated counterion, how much of the adjacent part of the tail).

Would be good if any data base that is set up is able to either include, or to indicate where to find such information. This amounts to giving either the molar volumes or the bulk densities of the different parts (ideally as a function of temperature). A big task!

Breaking molecules down into standard parts will help with dealing with new molecules. There were some early papers in this direction, e.g. as attached here, Hayter & Penfold (1983) micelles, using data from Tanford (1972), Immirzi(1977), Perkins - volumes of amino acids (1986). Perhaps it is time for such data to be updated (does anyone know of more recent tabulations?) or maybe molecular dynamics etc simulation codes can do much better these days?

(https://github.com/reflectivity/edu_outreach/files/5254691/Tanford_shapes_of_micelles_JPhysChem_1972.pdf) (https://github.com/reflectivity/edu_outreach/files/5254666/Perkins_AminoAcidVolumes_EJB_1986.pdf) (https://github.com/reflectivity/edu_outreach/files/5254655/Immirzi_Molar_Volumes_ActaCryst_1977.pdf) (https://github.com/reflectivity/edu_outreach/files/5254642/Hayter_Penfold_CollPolySci_1983.pdf)

wpotrzebowski commented 3 years ago

Prototype is ready for testing, however it requires setting up a user account at the ESS server. If you are interested in testing it please let @wpotrzebowski know.

tomarnoldess commented 2 years ago

The SLD database now exists. https://slddb.esss.dk/slddb/