Search All of the Math Forum:

Views expressed in these public forums are not endorsed by NCTM or The Math Forum.

Notice: We are no longer accepting new posts, but the forums will continue to be readable.

Topic: NDSolve PDE problem
Replies: 1   Last Post: Mar 15, 2013 1:46 AM

 Messages: [ Previous | Next ]
 Alexei Boulbitch Posts: 483 Registered: 2/28/08
Re: NDSolve PDE problem
Posted: Mar 15, 2013 1:46 AM

Hello All,

I am having a problem using NDSolve. I get the error:

"NDSolve::ivone: Boundary values may only be specified for one independent
variable. Initial values may only be specified at one value of the other in dependent variable."

The input is the following (I marked different entries with new lines for readability):

NDSolve[
{
1+10 DiracDelta[t] DiracDelta[-10+z]+10 DiracDelta[-5+z]==-10 (x^(0,2))[t,z]+(1+10 DiracDelta[-5+z]) (x^(2,0))[t,z],

x[0,z]==1/20 ((40-z) z+20 (z+(5-z) HeavisideTheta[-5+z])),

x[t,0]==0
}

,x[t,z],

{t,0,Sqrt[10]},

{z,0,10}

]

Essentially I have a second order PDE for x[t,z], and I define x[t=0,z] and x[t,z=0]. As far as I understand this is sufficient to solve this equation, or do I need more boundaries? Is my syntax wrong?

Best,

Ilya

Hi, Ilia,

I confirm the unreasonable message of Mathematica reported by Ilia. First, there is no discrepancy between the initial and the boundary conditions, and they are given according to the NDSolve rules.

I also checked, if Mathematica did not got "scared" by all DiracDeltas and HeavisideTheta functions. To this end I replaced these functions by more trivial ones that in no case may cause Mathematica problems:

Clear[x, z, t];
eq1 = 1 + 10 Exp[-t^2] Exp[-(-10 + z)^2] +
10 Exp[-(-5 + z)^2] == -10*\!\(
\*SubscriptBox[\(\[PartialD]\), \({z, 2}\)]\ \(x[t, z]\)\) + (1 +
10 Exp[-(-5 + z)^2])*\!\(
\*SubscriptBox[\(\[PartialD]\), \({t, 2}\)]\ \(x[t, z]\)\);
eq2 = x[0, z] == z;
eq3 = x[t, 0] == 0;

NDSolve[{eq1, eq2 , eq3}, x[t, z], {t, 0, Sqrt[10]}, {z, 0, 10}]

In this case, however, like in the original case reported by Ilia the equation is not solved and the message

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

Is it a bug?

Alexei

Alexei BOULBITCH, Dr., habil.
IEE S.A.
ZAE Weiergewan,
11, rue Edmond Reuter,
L-5326 Contern, LUXEMBOURG

Office phone : +352-2454-2566
Office fax: +352-2454-3566
mobile phone: +49 151 52 40 66 44

e-mail: alexei.boulbitch@iee.lu

Date Subject Author
3/13/13 Ilya Valmianski
3/15/13 Alexei Boulbitch