Re: plot thousands(?) of trajectories in single graph.
- To: mathgroup at smc.vnet.net
- Subject: [mg50494] Re: plot thousands(?) of trajectories in single graph.
- From: Jens-Peer Kuska <kuska at informatik.uni-leipzig.de>
- Date: Wed, 8 Sep 2004 05:08:27 -0400 (EDT)
- Organization: Universitaet Leipzig
- References: <chk0es$so$1@smc.vnet.net>
- Reply-to: kuska at informatik.uni-leipzig.de
- Sender: owner-wri-mathgroup at wolfram.com
Hi, DoRandomSolution[i_Integer] := Block[{$DisplayFunction = Identity, sol}, Table[sol = NDSolve[{ y''[t] - g*y'[t] + (1 + Cos[omega*t])*y[t] == 0, y[0] == Random[], y'[0] == Random[]} /. {g -> Random[], omega -> 2Pi*Random[]}, {y[t]}, {t, 0, 6Pi}]; Plot[Evaluate[y[t] /. sol[[1]]], {t, 0, 2Pi}], {i}] ] ss = DoRandomSolution[4000]; Show[ss] Regards Jens sean kim wrote: > > hello group, > > I have a routein that solves a system of odes over a > parameter space thousands of times while randomly > varying the values. > > What I would like to do is take a variable and the > resulting solutions(however many routine has generated > over the course of evaluation) and plot them on single > graph. > > So you will get rather messy graph, but nonetheless > shows possible trajectories given system can yield. > > How do I go about doing this? > > I thought i could save the interpolating functions and > then evaluate thousands at the end of a routine and > show together. But How do I save the interpolating > function? > > or do I plot with inside the module with > DisplayFunction-> Identity and then save the plot and > DisplayTogether the thousands of graphs at the end of > the routine. > > if doing thousands isn't possible, is it possible to > show hundreds of trajectories? > > thanks in advance for any insights. > > sean > > code below is a example skeletal code for running > hundred random solutions of an ode system. > > Do[ > Module[{}, > k1 = Random[Real, {1/10, 5/10}]; > k2 = Random[Real, {1/20, 5/20}]; > ndsolution = > NDSolve[{a'[t] == -k1 a[t] x[t], b'[t] == -k2 b[t] > y[t], x'[t] == -k1 a[t] x[t] + k2 b[t] y[t], y'[t] == > k1 a[t] x[t] - k2 b[t] y[t], a[0] == 1, b[0] == 1, > x[0] == 1, y[0] == 0},{a, b, x, y}, {t, 0, 250}][[1]]; > Plot[Evaluate[{a[t], b[t], x[t], y[t]} /. ndsolution], > {t, 0, 250}, PlotRange -> All, PlotStyle -> > {{AbsoluteThickness[2], RGBColor[0, 0, 0]}, > {AbsoluteThickness[2], RGBColor[.7, 0, 0]}, > {AbsoluteThickness[2], RGBColor[0, .7, 0]}, > {AbsoluteThickness[2], RGBColor[0, 0, .7]}}, Axes -> > False, Frame -> True, PlotLabel -> StyleForm[A > StyleForm[" B", FontColor -> RGBColor[.7, 0, 0]] > StyleForm[" X", FontColor -> RGBColor[0, .7, > 0]]StyleForm[" Y", FontColor -> RGBColor[0, 0, .7]], > FontFamily -> "Helvetica", FontWeight -> "Bold"]]; > ] > ,{i, 100}] > > > _______________________________ > Do you Yahoo!? > Win 1 of 4,000 free domain names from Yahoo! Enter now. > http://promotions.yahoo.com/goldrush
- Follow-Ups:
- Re: Re: plot thousands(?) of trajectories in single graph.
- From: DrBob <drbob@bigfoot.com>
- Re: Re: plot thousands(?) of trajectories in single graph.