In general, when solving a 2nd order PDE (such as the wave equation below) for u(x,t),x∈(−∞,∞),t∈(0,∞)
NDSolve[{D[u[x, t], {t, 2}] == D[u[x, t], {x, 2}],
u[x, 0] == E^(-x^2), Derivative[0, 1][u][x, 0] == 1}, u, {x, -7, 7}, {t, 0, 4}]
I get the error
NDSolve::bcart: Warning: an insufficient number of boundary conditions
have been specified for the direction of independent variable x.
Artificial boundary effects may be present in the solution.
The only thing I can think of is that when solving numerically I have introduced fictitious new boundaries to the problem by simply specifying a finite range {x,-7,7}. If this is the problem, how do I get around it? (NB the real PDE I'm trying to solve is more complicated and does not describe localized waves).
Also, oddly, if I take out the second I.C.
Derivative[0, 1][u][x, 0] == 1
It doesn't complain but it seems to invent its own boundary conditions and gives the wrong solution.
Edit: the actual PDE I'm solving is of the form −∂2tϕ+√2Mr(32r∂tϕ+2∂t∂rϕ)+1r2∂r[r(r−2M)∂tϕ]−m2ϕ=0,
with the initial conditions ϕ(r>>1,t)=10−t1/3 and \partial_r\phi(r>>1,t) = 0$. Any tips regarding the best way to get around the issues above in this case would be amazing.
Comments
Post a Comment