Skip to content

Consider using SphericalBesselTransforms.jl for log-grid pseudos #1258

@azadoks

Description

@azadoks

I just submitted SphericalBesselTransforms.jl the registrator.

It's a fairly direct translation of pySBT which implements the algorithm described in Talman, Comp. Phys. Comms. 180, 332 (2009) for the SBT/Hankel transform of functions on a logarithmic radial mesh in O(Nlog(N)) time using FFTs.

The implementation is fairly minimal, and the interface is not super ergonomic at the moment. I spent some time with the profiler to make sure it's pretty fast, so the typing might be a bit too strict.

An implementation in DFTK would probably also require some interpolation because the transform returns g(k) on a logarithmic grid. For AD support, we'd also need to write a rule.

I wrote up a quick example here which does the transforms for HGH pseudos and compares with the analytic reference. It seems to do quite well, but I should probably also compare to simpson integration / QuadGK.jl.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions