Refine I(Q,t) data - #1695
Refine I(Q,t) data#1695MBartkowiakSTFC wants to merge 17 commits into
Conversation
| return input_2D_array / input_2D_array[:1, :] | ||
|
|
||
|
|
||
| if __name__ == "__main__": |
There was a problem hiding this comment.
Is there a reason for this to be in a main guard?
There was a problem hiding this comment.
MDANSEObservable could be set to run in multiprocessing mode. We want to prevent the subprocesses from starting their own simulations.
0ef0af0 to
1d2b489
Compare
I had a look at https://pubs.aip.org/aip/jcp/article/133/23/234506/950138/Reduced-mobility-of-di-propylene-glycol and it says that they obtain |
Our own scientists also published a document https://doi.org/10.1016/j.physb.2019.02.041 where I(Q,t) is defined as intermediate scattering function, which can be Fourier transformed to give S(Q,w). So, unlike in some other scattering techniques (e.g. diffraction), it seems that F(...) and I(...) are the same thing. |
Description of work
This PR uses the MDANSE S(Q,w) calculator, but takes the F(Q,t) as the calculated observable.
The example script
pgme-openmm.pyshows that the calculation is possible, but does not construct the correct simulation that would match the experiment results. It still uses argon as the model system, so the refinement is not going to converge.Fixes
To test
Run the
pgme-openmm.pyscript in theexamplesdirectory.Question
At the moment the code takes F(Q,t) and compares it to the experiment results. The experiment result is most likely I(Q,t). Should we be taking F(Q,t)^2 to get I(Q,t)?