From 4052b8822097c3f8147ae0ad41341640d240da4c Mon Sep 17 00:00:00 2001 From: Ashton Bradley Date: Tue, 21 May 2024 13:10:35 +1200 Subject: [PATCH] stop doing endpoint corrections twice --- src/analysis.jl | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/src/analysis.jl b/src/analysis.jl index e6db8b9..5191254 100644 --- a/src/analysis.jl +++ b/src/analysis.jl @@ -293,10 +293,10 @@ cross_correlate(psi1::Psi{D},psi2::Psi{D}) where D = cross_correlate(psi1.ψ,psi function bessel_reduce(k,x,y,C) dx,dy = x[2]-x[1],y[2]-y[1] Nx,Ny = 2*length(x),2*length(y) - Lx = x[end] - x[begin] + dx - Ly = y[end] - y[begin] + dy - xp = LinRange(-Lx,Lx,Nx+1)[1:Nx] - yq = LinRange(-Ly,Ly,Ny+1)[1:Ny] + Lx = x[end] - x[begin] + Ly = y[end] - y[begin] + xp = LinRange(-Lx,Lx,Nx+1)[1:Nx] |> fftshift + yq = LinRange(-Ly,Ly,Ny+1)[1:Ny] |> fftshift E = zero(k) @tullio E[i] = real(besselj0(k[i]*hypot(xp[p],yq[q]))*C[p,q]) @. E *= k*dx*dy/2/pi @@ -306,12 +306,12 @@ end function sinc_reduce(k,x,y,z,C) dx,dy,dz = x[2]-x[1],y[2]-y[1],z[2]-z[1] Nx,Ny,Nz = 2*length(x),2*length(y),2*length(z) - Lx = x[end] - x[begin] + dx - Ly = y[end] - y[begin] + dy - Lz = z[end] - z[begin] + dz - xp = LinRange(-Lx,Lx,Nx+1)[1:Nx] - yq = LinRange(-Ly,Ly,Ny+1)[1:Ny] - zr = LinRange(-Lz,Lz,Nz+1)[1:Nz] + Lx = x[end] - x[begin] + Ly = y[end] - y[begin] + Lz = z[end] - z[begin] + xp = LinRange(-Lx,Lx,Nx+1)[1:Nx] |> fftshift + yq = LinRange(-Ly,Ly,Ny+1)[1:Ny] |> fftshift + zr = LinRange(-Lz,Lz,Nz+1)[1:Nz] |> fftshift E = zero(k) @tullio E[i] = real(π*sinc(k[i]*hypot(xp[p],yq[q],zr[r])/π)*C[p,q,r]) @. E *= k^2*dx*dy*dz/2/pi^2