
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 ((40z) z+20 (z+(5z) 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, L5326 Contern, LUXEMBOURG
Office phone : +35224542566 Office fax: +35224543566 mobile phone: +49 151 52 40 66 44
email: alexei.boulbitch@iee.lu

