Re: NDSolve PDE problem
- To: mathgroup at smc.vnet.net
- Subject: [mg130151] Re: NDSolve PDE problem
- From: Alexei Boulbitch <Alexei.Boulbitch at iee.lu>
- Date: Fri, 15 Mar 2013 01:45:50 -0400 (EDT)
- Delivered-to: l-mathgroup@mail-archive0.wolfram.com
- Delivered-to: l-mathgroup@wolfram.com
- Delivered-to: mathgroup-newout@smc.vnet.net
- Delivered-to: mathgroup-newsend@smc.vnet.net
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 at iee.lu