ICAP 2002 Abstracts and Posters

A Python Shell for ORBIT, a Code for Synchrotrons with Space Charge


Abstract

ORBIT is a code developed at SNS to model synchrotrons operating in a regime where space charge is relevant to the dynamics. Although the code is entirely written in C++, it is structured as a collection of modules interfaced to SuperCODE, a high level interpreter shell. SuperCODE was developed at LLNL in the early 90; its syntax is -by design- similar to C++. In many ways, it was ahead of its time; unfortunately it is now an orphaned product. In this paper we report on the technical aspects of modifications to ORBIT to replace SuperCODE with the widely supported Open Source Python interpreter. In part because of its reliance on immutable data types to simplify memory management, Python has some minor limitations. However, this is more that compensated by the fact that it allows programmers and users to extend and/or customize ORBIT using procedures that are straightforward and well documented. Furthermore, it is also possible to take immediate advantage of existing, high quality modules for functions such as plotting or signal processing.


Jean-Francois Ostiguy FNAL, Jeff Holmes SNS, John Galambos SNS


Go Back to the ICAP02 Talks Schedule page.
Go Back to the ICAP02 Posters page.
Go Back to the ICAP02 home.


This page is maintained by Kyoko Makino.