Drexel dragonThe Math ForumDonate to the Math Forum



Search All of the Math Forum:

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


Math Forum » Discussions » Software » comp.soft-sys.math.mathematica

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

Advanced Search

Back to Topic List Back to Topic List Jump to Tree View Jump to Tree View   Messages: [ Previous | Next ]
Alexei Boulbitch

Posts: 483
Registered: 2/28/08
Re: NDSolve PDE problem
Posted: Mar 15, 2013 1:46 AM
  Click to see the message monospaced in plain text Plain Text   Click to reply to this topic Reply

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
reads:

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








Point your RSS reader here for a feed of the latest messages in this topic.

[Privacy Policy] [Terms of Use]

© Drexel University 1994-2014. All Rights Reserved.
The Math Forum is a research and educational enterprise of the Drexel University School of Education.