| FazBrowse GitHub Viewer | Trending | | Home |
| Tools: [Download Repo ZIP] [Original HTTPS Page] |
There was a problem hiding this comment.
We are moving from boost to nanobind. This is on the nano branch which is what we should use as base branch.
Also, we will have to migrate the libdiffpy code also. Maybe merge the nano branch into 3DPDF branch?
Sorry, something went wrong.
|
Thanks Simon. I agree that this should move away from the Boost.Python wrapper path. I checked the currently visible branches on diffpy/diffpy.srreal. I see migration-nano, but it still appears to use the existing Boost.Python binding code and I do not see nanobind usage there. Could you confirm the exact nano/nanobind branch or PR that I should use as the base? Once the correct base is clear, I will prepare a clean PDF3DCalculator binding branch against that nanobind base, rather than continuing to extend the current Boost.Python wrapper in this PR. I will also keep this dependent on the companion libdiffpy PDF3DCalculator PR. |
Sorry, something went wrong.
These edits are not merged yet, they are in #86 . It would be a help if you could review them and look for any issues. Also, that PR is showing up as a draft. I am not sure why. Perhaps you could work with the team to help us get to a point where we can merge this safely, then you can use the migration-nano as the base branch. |
Sorry, something went wrong.
|
@joeseaer I gave a quick look at #86 and it is a bit of a dirty PR so we will redo it, but please could you look at the code updates over there and see if you see any issues so when we redo it we can incorporate any improvements that you can see. @SYMSCAE please can you communicate with @joeseaer who is writing a new 3D PDF calculator. @joeseaer I think we discussed the name for this class with @dragonyanglong and thought PDF3D is better than 3DPDF (or ThreeDPDF to make it work) but let's think about it a bit so we can make the naming more standard across the project. For example, we now have DebyePDFcalculator and not PDFDebyeCalculator and this breaks that. Another thought is that moving forward we hope there will be many calculators for different things like a XANES calculator or something. If we want to standardize naming, we may want to standardize to SignalMethodCalculator or something like that. So all the debye PDF calculator would be PDFDebyeCalculator or more strictly PdfDebyeCalculator. In your case, in this scenario, I think you are calculating something different which is 3DPDF which is different from PDF, so 3DPDFCalculator would be more logical. I had a quick conversation with Gemini and I think the best is to move to SignalMethodCalculator as our standard. This means that we may want to call this ThreedpdfCalculator (to be strict) and ThreedPdfCalculator or ThreedPDFCalculatororThreeDPDFCalculator`. Any thoughts? The reason for this standardization is so things can scale well to other signals and methods. We hope that there will be many! |
Sorry, something went wrong.
|
@sbillinge ThreeDPDFCalculator sounds good to me. How do you think? |
Sorry, something went wrong.
|
@joeseaer I merged the nanobind work into main. Please could you make a new PR with the 3D-PDF stuff into main? |
Sorry, something went wrong.
|
Warning! No news item is found for this PR. If this is a user-facing |
Sorry, something went wrong.
| Back | FazBrowse Home | New Git URL |
Hi @sbillinge @dragonyanglong ,
This PR exposes the new libdiffpy PDF3DCalculator through diffpy.srreal.
It adds the Boost.Python binding for PDF3DCalculator, NumPy accessors for the
3D PDF and radial histogram outputs, binary grid export, delta pair filtering,
pickle support, and Python-side property wrappers for the 3D calculator
attributes.
This PR depends on the companion libdiffpy PR that adds PDF3DCalculator and
its supporting C++ helpers.