Re: NDSolve question
- To: mathgroup at smc.vnet.net
- Subject: [mg44453] Re: NDSolve question
- From: Alois Steindl <Alois.Steindl at tuwien.ac.at>
- Date: Mon, 10 Nov 2003 04:52:22 -0500 (EST)
- Organization: Inst. f. Mechanics II, TU Vienna
- References: <boifd7$obn$1@smc.vnet.net>
- Sender: owner-wri-mathgroup at wolfram.com
"Emmanuel Dechenaux" <dechenau at purdue.edu> writes: > Hi, > I have what probably is a very basic question. I'm trying to solve the > complicated first order differential equation below. There is a singularity > at zero (which is my initial condition). The equation is also highly > non-linear. I'm not quite sure what to do. I used different initial > conditions as well, but Mathematica stops very quickly at x=3...... even if > I increase MaxSteps. Again, I'm not quite sure what to do. If someone could > help me, that would be great. Thanks. > Emmanuel > (My apology if the mathematica input didn't paste cleanly). > > r = 0.7 > solution = > NDSolve[{ (y' )[x] == ( ((x - y[x]) )^ ((r) ) - (( (-y[x] )) )^ ((r) ) ) / > (x* ((r) ) ((x - y[x]) )^ ((r - 1) ) + ((1000 - x) ) (( (-y[x] )) )^ ((r - > 1) ) ), y[0] == 0}, y, {x, 0, 1000}, MaxSteps -> 100000] > > Hello, the error messages from Mathematica are quite self-explaining. Did you ever try to read them? It is quite likely that Mathematica (resp. NDSolve) isn't able to solve singular differential equations. You will have to reformulate your system to make it regular. Just an idea: You could try to find the leading part of a power series expansion at (x,y) = (0,0) and integrate from some x_0 with initial values y_0(x_0) from the expansion. You will also have to avoid the problem, that x^y isn't defined (within real numbers) for negative x and real y. Alois -- Alois Steindl, Tel.: +43 (1) 58801 / 32558 Inst. for Mechanics II, Fax.: +43 (1) 58801 / 32598 Vienna University of Technology, A-1040 Wiedner Hauptstr. 8-10