MathGroup Archive 2003

[Date Index] [Thread Index] [Author Index]

Search the Archive

Strange solution of NDSolve

  • To: mathgroup at smc.vnet.net
  • Subject: [mg45134] Strange solution of NDSolve
  • From: Yama Masu <yamagomas at yahoo.co.jp>
  • Date: Wed, 17 Dec 2003 07:54:47 -0500 (EST)
  • Sender: owner-wri-mathgroup at wolfram.com

Hi.

I am now  trying to solve string oscillation with impulse using NDSolve.

f[x_, t_] = f[(t > 0 && t < 0.011) && (x > -0.01 && x < 0.01), Sin[100 Pi t], 0]
sol = NDSolve[{D[u[x, t], {t, 2}] == D[u[x, t], {x, 2}] + f[x, t], 
      u[x, 0] == 0, Derivative[0, 1][u][x, 0] == 0, u[-1, t] == 0, 
      u[1, t] == 0}, u, {x, -1, 1}, {t, 0, 1}]
{usol} = {u} /. sol[[1]]
Plot[usol[x, 0.2], {x, -1, 1}, PlotRange -> {0, 0.001}]

But NDSolve gives strange solutions in the following two ways.

(1)
If I change the boundary to  -2<x<-2 such that
 ...u[-2, t] == 0, u[2, t] == 0}, u, {x, -2, 2}, {t, 0, 1},
The solution is different from the one shown above and is about the double.

But this is physically strange. Since the speed of propagation of the wave is 1,
there must be no effect of boundary until t=1. There should not be any 
difference between the two above.

Why does NDSolve give dependence on boundary at small t?

(2)
If I change the boundary to -3<x<1 such that
 ...u[-3, t] == 0, u[1, t] == 0}, u, {x, -3, 1}, {t, 0, 1},
The singularity at x=0 is neglected and NDSolve gives u[x,t]=0.

How can I have NDSolve recognize this singularity?

Yama Masu


  • Prev by Date: Re: Can I use Visual C++ to call "Mathematica 4.0" to open a "nb_file" and calculate the result .??
  • Next by Date: Get theoretical answer on linear equations
  • Previous by thread: RE: Condensing a 4-Tensor into a 2-Tensor
  • Next by thread: Get theoretical answer on linear equations