Re: Poisson equation with boundary conditions on rectangle
- To: mathgroup at smc.vnet.net
- Subject: [mg87336] Re: Poisson equation with boundary conditions on rectangle
- From: Oliver Ruebenkoenig <ruebenko at uni-freiburg.de>
- Date: Tue, 8 Apr 2008 05:35:37 -0400 (EDT)
- References: <frvma1$i4d$1@smc.vnet.net> <ftcp1t$l00$1@smc.vnet.net>
Hi Michael, On Mon, 7 Apr 2008, Michael Debono wrote: > On Mar 21, 7:58 am, Benjamin Hell <hell... at gmx.de> wrote: >> Hi, >> I'm currently trying to solve the following pde with rectangle boundary (I better already use mathematica code here): >> >> The equation (Poisson equation): >> D[u[y, z], y, y] + D[u[y, z], z, z] + 1 == 0 >> >> The boundary conditions on the rectangle(y in [0,0.1] and z in [-0.4,0.4]): >> u[y, 0.4] == 0, u[y, -0.4] == 0, u[0, z] == 0, >> Derivative[1, 0][u][0.1, z] == 0 >> >> I tried the following in mathematica: >> eqn = D[u[y, z], y, y] + D[u[y, z], z, z] + 1 == 0; //defining equation >> NDSolve[{eqn, u[y, 0.4] == 0, u[y, -0.4] == 0, u[0, z] == 0, Derivative[1, 0][u][0.1, z] == 0 }, u, {y, 0, 0.1}, {z, -0.4, 0.4}] //using NDSolve to solve the boundary problem >> >> But, as you might guess, I get an error using NDSolve the way above: "NDSolve::ivone: Boundary values may only be specified for one independent variable. Initial values may only be specified at one value of the other independent variable." >> When I lookup the description of that error I realize that in my example the following error condition matches: "This input generates a message because the equations specify values for the solution on all sides of the solution region." >> Does this mean, that mathematica can't approximate the solution to my problem with NDSolve or am I doing something wrong? >> So overall question is: How can I solve my problem using mathematica without writing my own numerical pde solver for my problem? >> >> Thanks in advance! > > I too have a problem like yours...I found this link which may help > you: > http://documents.wolfram.com/mathematica/Built-inFunctions/AdvancedDocumentation/LinearAlgebra/LinearAlgebraInMathematica/Examples/AdvancedDocumentationLinearAlgebra6.3.html > It uses a finite difference method..even tough I don't really know how > it works lol! > > If you are interested in how the FDM works have a look at a tutorial i wrote some time ago. http://www.imtek.uni-freiburg.de/simulation/mathematica/IMSweb/imsTOC/Lectures%20and%20Tips/Simulation%20I/index.html Oliver Oliver Ruebenkoenig, <ruebenko AT uni-freiburg.de>