Open MikaelSlevinsky opened 8 years ago
@MikaelSlevinsky I think the current implementation of Hilbert(Circle(),2)
is wrong, as it should be equivalent to Derivative()*Hilbert(Circle())
. Any objections to
Hilbert{DD<:Circle}(S::Laurent{DD},k) = k==1 ? ConcreteHilbert(S) : HilbertWrapper(Derivative(k-1)*Hilbert(S),k)
Then we can do SingularIntegral by multiplying by z to transform ds into dz:
function SingularIntegral{DD<:Circle}(d::Laurent{DD},k)
k==1 && ConcreteSingularIntegral(d)
z = Fun(d)
SingularIntegralWrapper(Hilbert(d,k)[z],k)
end
Yep, I think you're right. Related issue, #61.
i.e. the hypersingular integral is missing. Normal derivatives on the Circle are outward - this should help. We should be able to plug in the normal derivatives of the Helmholtz fundamental solution (in HelmholtzNeumann.jl) as they seem to be coordinate independent.