[SciPy-User] Trajectory Integration via scipy.integrate or PyDSTool?

Sara Gallian sara2411 at gmail.com
Mon May 14 14:12:33 EDT 2012


Dear Lou, 
I'm just moving a bunch of electrons in a static b field
dv/dt = q/m v x B
B depends on the position, in general
They move in this field, without interacting, till they bounce off a wall, that specularly reflects them
Yes, the dynamic is conservative.
I could just write a RK4 and check the position at every ts, but I was hoping to be able to use a better tool
Thanks
Sara

Sent from my iPhone

On 14.05.2012, at 20:03, Lou Pecora <lou_boog2000 at yahoo.com> wrote:

> Hi, Sara,
> 
> Can you give more information?  
> 
> Are the particles in a potential or is it free flight between hard wall collisions?  Do the particles interact?  I assume the dynamics are conservative (Hamiltonian). Is that correct?
>  
> -- Lou Pecora, my views are my own.
> From: Rob Clewley <rob.clewley at gmail.com>
> To: SciPy Users List <scipy-user at scipy.org> 
> Sent: Monday, May 14, 2012 1:22 PM
> Subject: Re: [SciPy-User] Trajectory Integration via scipy.integrate or PyDSTool?
> 
> Hi Sara,
> 
> I think you should use a tool that's appropriate for the task. With an
> hour of work and help on this list or the PyDSTool forum at
> http://sourceforge.net/projects/pydstool/forums/forum/472291 you
> should be able to get your problem working quickly with PyDSTool. I
> expect your problem is easy to solve in PyDSTool, and difficult to do
> with odeint.
> 
> You can still use scipy's VODE in PyDSTool and you won't need any
> fancy installation. Check out the file vode_event_test1.py in the
> tests directory. Writing the vector field is simple, but in case you
> have specific problems setting up yours then you should send me your
> code on list so that I can help. I'd be interested to see what the
> equations look like.
> 
> It's very simple to define a terminal event, just copy and adapt the
> code in the file. You can write a loop so that whenever integration
> has stopped because of an event, you reverse the velocity IC and
> restart.
> 
> -Rob
> 
> On Mon, May 14, 2012 at 12:59 PM, Sara Gallian <sara2411 at gmail.com> wrote:
> > Hi all,
> > I'm trying to integrate particle trajectories in a finite domain, and I need to make them "reflect" at the boundaries (i.e. reverse the velocity perpendicular to the plane they collided with). I started by using  scipy.integrate.odeint , but since the integration steps are variable, simply checking the position and reversing the velocity won't work!
> > Can anyone suggest the quickest way to obtain this? would Vode be able to handle this, or should I try to learn to use  PyDSTool?
> > I'm running pretty late on a deadline, so any suggestion is more than appreciated :)
> > Thanks!
> > Sara
> > _______________________________________________
> > SciPy-User mailing list
> > SciPy-User at scipy.org
> > http://mail.scipy.org/mailman/listinfo/scipy-user
> 
> 
> 
> -- 
> Robert Clewley, Ph.D.
> Assistant Professor
> Neuroscience Institute and
> Department of Mathematics and Statistics
> Georgia State University
> PO Box 5030
> Atlanta, GA 30302, USA
> 
> tel: 404-413-6420 fax: 404-413-5446
> http://www2.gsu.edu/~matrhc
> http://neuroscience.gsu.edu/rclewley.html
> _______________________________________________
> SciPy-User mailing list
> SciPy-User at scipy.org
> http://mail.scipy.org/mailman/listinfo/scipy-user
> 
> 
> _______________________________________________
> SciPy-User mailing list
> SciPy-User at scipy.org
> http://mail.scipy.org/mailman/listinfo/scipy-user
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.scipy.org/pipermail/scipy-user/attachments/20120514/3903b7f7/attachment.html>


More information about the SciPy-User mailing list