helmholtz equation and divergence condition




I'm trying to solve the following elliptic problem :

S = B - \mu\nabla^2 B

Where S(x,y) and B(x,y) are 3 component vectors.

I have \nabla\cdot S = 0 and I want B such that \nabla\cdot B = 0 everywhere.

I'm using finite differences on a grid with nx+1 in the x direction and ny+1 points in the y direction. The x=0 and x=nx boundaries are periodic, so we have :

Bx(0,y) = Bx(nx,y)
By(0,y) = By(nx,y)
Bz(0,y) = Bz(nx,y)


I thought that maybe the following boundary conditions would ensure \nabla\cdot B=0 :


Bx(x,0) = B_1
Bx(x,ny) = B_2

dBy/dy = 0 at y=0 and y=ny

(this make the divergence of B equal to zero on the y=0 and y=ny boundaries)

and homogenous dirichlet conditions for Bz at y=0 and y=ny.

Do you so far agree with that ?

I'm using centered second order scheme to discretize my equation (standard 5 point laplacien). And for the Neumann BC I'm doing :

By(x,-1) = By(x,1) for the y=0 border
By(x,ny+1) = By(x,ny-1) for the y=ny border.

This is supposed to be second order first derivative. Thanks to this, I can replace the "ghost" point in my Laplacian when I'm on the top or bottom border.

But I have a problem, when I look at [tex]\nabla\cdot B[/tex], it is 0 in the middle of my domain but on a small length from the y=constant borders, the divergence of B is starting to raise anormally.

example :

http://nico.aunai.free.fr/divB.png

another one (del dot B versus y-direction) :

http://nico.aunai.free.fr/divb.png


you can see that there is no problem at all on the periodic boundaries :-s


When I'm solving the equation for an analytical source term for which I know the analytical solution, I can notice that there is a small error (but definitly bigger than everywhere else in the domain) on the Y boundary regarding to the Neumann BC.

Please, would you know where I should look at to fix this problem ?
Is my boundary conditions are bad to satisfy \nabla\cdot B=0 ?

Is my discretisation not correct ? I've checked the local truncation error which seems to be second order consistant, and eigenvalues of my linear operator looks pretty much the same that those of the Laplacian (1- L), and if I'm correct it should be stable and so converge towards the solution with second order accuracy everywhere, no ?

I can post my gauss-seidel routine if needed.

Thanks a lot !
Please tell me if something's not clear.
.



Relevant Pages

  • Re: helmholtz equation and divergence condition
    ... The x=0 and x=nx boundaries are ... I thought that maybe the following boundary conditions would ensure ... This is supposed to be second order first derivative. ... linear operator looks pretty much the same that those of the Laplacian ...
    (comp.graphics.algorithms)
  • Re: Exotic Drums and the Helmholtz Equation
    ... is that f is zero on the boundary of M. ... Laplacian with real, negative eigenvalues which are zero on any given ... drum which is physically ...
    (sci.physics.research)
  • Re: higher order finite differencing scheme
    ... >changes near the boundaries. ... in the nonlinear system to be solved, including the trouble of special treatment ... properties of the Jacobian of the nonlinear system to be solved. ... therefore I would prefer to use the simple second order scheme with several ...
    (sci.math.num-analysis)
  • Re: Questions about boundary conditions..
    ... Laplaces equation in 2D and we have a solution on a very large (tending to ... what boundary conditions should be applied to the sub-domain. ... finite difference problem - for example does it have to be strictly ... what concerns general boundaries for the finite difference method, ...
    (sci.math.num-analysis)
  • Re: System boundary
    ... On Jun 6, 5:08 am, Haines Brown ... Foundations of Physics by ... discusses specific and general boundary conditions at length. ... in that description; boundaries are real. ...
    (sci.physics)