SasView / sasview

Code for the SasView application.
BSD 3-Clause "New" or "Revised" License
48 stars 41 forks source link

Add volume fraction profile to Correlation Function analysis (Trac #785) #891

Open smk78 opened 5 years ago

smk78 commented 5 years ago

The new correlation function analysis implemented post-4.0 has a radio button for the option to perform a Hilbert transform to generate a volume fraction profile for adsorbed layers.

The code to perform this currently exists but in Fortran. It needs porting to Python and then integrating with the corfunc perspective.

Migrated from http://trac.sasview.org/ticket/785

{
    "status": "new",
    "changetime": "2017-10-26T11:05:19",
    "_ts": "2017-10-26 11:05:19.611585+00:00",
    "description": "The new correlation function analysis implemented post-4.0 has a radio button for the option to perform a Hilbert transform to generate a volume fraction profile for adsorbed layers.\n\nThe code to perform this currently exists but in Fortran. It needs porting to Python and then integrating with the corfunc perspective.",
    "reporter": "smk78",
    "cc": "",
    "resolution": "",
    "workpackage": "SasView GUI Enhancements",
    "time": "2016-10-14T15:46:05",
    "component": "SasView",
    "summary": "Add volume fraction profile to Correlation Function analysis",
    "priority": "major",
    "keywords": "",
    "milestone": "SasView 4.3.0",
    "owner": "smk78",
    "type": "enhancement"
}
butlerpd commented 5 years ago

Trac update at 2017/10/23 16:33:48: butler commented:

Steve K. isn't this done now?

butlerpd commented 5 years ago

Trac update at 2017/10/23 16:34:03: butler changed milestone from "SasView Next Release +1" to "SasView 4.2.0"

smk78 commented 5 years ago

Trac update at 2017/10/23 17:13:55: smk78 commented:

No. Not started. The quick option to getting it working though would be to bundle a Fortran compiler...

butlerpd commented 5 years ago

Trac update at 2017/10/26 11:04:35:

Ok ... but dont we have the Hilbert transform already for the SESANS code? anyway guess it won't be done for 4.2 so moving to 4.3 for now.

butlerpd commented 4 years ago

Moving to 5.1

lucas-wilkins commented 2 years ago

@dehoni Is this the issue we discussed that isn't actually anything to do with corfunc?

dehoni commented 2 years ago

@dehoni Is this the issue we discussed that isn't actually anything to do with corfunc?

We were discussing $\Gamma_1$ with the $cos(qr)$ transform (undocumented origin). I assume that it is just a "normal" 1D Fourier transform of a symmetric function. This might be relevant for lamellar system. I questioned if there should not be rather a Bessel function J0 to transform the 2D, but radial symmetric scattering pattern on the detector. In a second thought, this should be called $\Gamma_2$. I have never ever seen someone using it, might be disturbing and only of academic value. $\Gamma_3$ is then the transform with the spherical Bessel transform $sin(qr)/qr$ as it already exists and known by everyone in the soft and hard matter community. The Hilbert transform seems to be still another biest. But the cited literature is hidden behind a paywall. @smk78 has surely more information on it...given that he is author on several of the papers.

smk78 commented 2 years ago

@smk78 does indeed know more about volume fraction profiles!

In the first instance, please see https://www.sasview.org/docs/_downloads/92ef44d1f703934655c43868021c297e/Fibre_Diffraction_Review_2005_13_19-22.pdf

The reason this is 'associated' with Corfunc is that the processing is very similar: take the experimental data, extrapolate it at both ends, and transform it. (In the original Corfunc implementation there was no extract parameters step). So the idea was there would just be a radio button to select the transform type.