Re: Re: NDSolve Question
- To: mathgroup at smc.vnet.net
- Subject: [mg86459] Re: [mg86427] Re: NDSolve Question
- From: Bob Hanlon <hanlonr at cox.net>
- Date: Tue, 11 Mar 2008 05:45:01 -0500 (EST)
- Reply-to: hanlonr at cox.net
The e-mail that was quoted in your reply was not what I sent. Some characters (plus signs) got lost on the way. The function was modified to x[t] plus 2 in the DSolve example and to q plus 2 in definition of f. I have resent the input/output. f[q_?NumericQ] := q; This function is not very useful as an example since DSolve[{x'[t] == x[t], x[0] == 0}, x[t], t][[1]] {x[t] -> 0} With a slight change DSolve[{x'[t] == x[t] + 2, x[0] == 0}, x[t], t][[1]] {x[t] -> 2*(-1 + E^t)} f[q_?NumericQ] := q + 2; Note that NumericQ is better than NumberQ so that f will evaluate with arguments like Pi or E f[3 Pi] 2 + 3*Pi sol = NDSolve[{x'[t] == f[x[t]], x[0] == 0}, x, {t, 0, 1}][[1]]; Plot[x[t] /. sol, {t, 0, 1}] Bob Hanlon ---- Jerry <Jer75811 at yahoo.com> wrote: > Sir, I tried your suggestions but I never get a plot unless > I use the init. condition x[0] == 1 as suggested by > jwmerrill. So I guess I still don't understand the issues. > Thanks. > > Bob Hanlon wrote: > > f[q_?NumericQ] := q; > > > > This function is not very useful as an example since > > > > DSolve[{x'[t] == x[t], x[0] == 0}, x[t], t][[1]] > > > > {x[t] -> 0} > > > > With a slight change > > > > DSolve[{x'[t] == x[t] 2, x[0] == 0}, x[t], t][[1]] > > > > {x[t] -> 2*(-1 E^t)} > > > > f[q_?NumericQ] := q 2; > > > > Note that NumericQ is better than NumberQ so that f will evaluate with arguments like Pi or E > > > > f[3 Pi] > > > > 2 3*Pi > > > > sol = NDSolve[{x'[t] == f[x[t]], x[0] == 0}, x, {t, 0, 1}][[1]]; > > > > Plot[x[t] /. sol, {t, 0, 1}] > > > > > > Bob Hanlon > > > > ---- Jerry <Jer75811 at yahoo.com> wrote: > >> Sir, I tried this and I only get plot axes, no graph. > >> > >> f[q_?NumberQ] := q > >> sol = NDSolve[{x'[t] == f[x[t]], x[0] == 0}, {x}, {t, 0, 1}] > >> Plot[x[t] /. sol, {t, 0, 1}] > >> > >> In place of {x} in sol I tried x and x[t] with no change. > >> In Plot I tried x instead of x[t], no help. > >> > >> Can you give me a successful example? Thanks. > >> > >> > >> > >> > >> David Park wrote: > >>> I found the answer, which is to use: > >>> > >>> f[q_?NumberQ]:= ... > >>> > >>> which prevents an initial evaluation. > >>> > > > > >