Heimdall
- 38
- 0
Hi,
I'm looking for an efficient algorithm to solve this kind of equation :
S = (1-\nabla^2)B
where both S(x,y) and B(x,y) can both be non-periodic functions. We know S and want to find out what is B.
I was wondering if there was a 'well known' method to solve this kind or problem in the case where both S and B are non-periodic functions...
I've started to write something...
Let S=S_0+S_* where S0 and S* are non periodic and periodic functions respectively. I take S0 such that I have S_0 = S on the boundaries of my domain, so S* is null there.
you have : S_* = (1-\nabla^2)(B+S_1)
with -(1-\nabla^2)S_1 = S_0
You can Fourier transform and obtain :
\mathcal{F}\left(S_*\right)= \mathcal{F}\left((1-\nabla^2)(B+S_1)\right) = (1+k^2) \mathcal{F}(B+S_1)
so that you can find :
B = \mathcal{F}^{-1}\left(\frac{\tilde{S_*}}{1+k^2}\right) - S_1
you can then have a solution of the problem by finding the analytical easy-to-integrate function S0.
In 1D it seems ok, but in 2D S0 must have the correct values on all borders which seems a bit complicated...
I'm looking for an efficient algorithm to solve this kind of equation :
S = (1-\nabla^2)B
where both S(x,y) and B(x,y) can both be non-periodic functions. We know S and want to find out what is B.
I was wondering if there was a 'well known' method to solve this kind or problem in the case where both S and B are non-periodic functions...
I've started to write something...
Let S=S_0+S_* where S0 and S* are non periodic and periodic functions respectively. I take S0 such that I have S_0 = S on the boundaries of my domain, so S* is null there.
you have : S_* = (1-\nabla^2)(B+S_1)
with -(1-\nabla^2)S_1 = S_0
You can Fourier transform and obtain :
\mathcal{F}\left(S_*\right)= \mathcal{F}\left((1-\nabla^2)(B+S_1)\right) = (1+k^2) \mathcal{F}(B+S_1)
so that you can find :
B = \mathcal{F}^{-1}\left(\frac{\tilde{S_*}}{1+k^2}\right) - S_1
you can then have a solution of the problem by finding the analytical easy-to-integrate function S0.
In 1D it seems ok, but in 2D S0 must have the correct values on all borders which seems a bit complicated...
Last edited: