skip to main content
OSTI.GOV title logo U.S. Department of Energy
Office of Scientific and Technical Information

Title: PAC++: Object-oriented platform for accelerator codes

Abstract

Software packages in accelerator physics have relatively long life cycles. They had been developed and used for a wide range of accelerators in the past as well as for the current projects. For example, the basic algorithms written in the first accelerator Program TRANSPORT are actual for design of most magnet systems. Most of these packages had been implemented on Fortran. But this language is rather inconvenient as a basic language for large integrated projects that possibly could include real-time data acquisition, data base access, graphic riser interface modules (GUI), arid other features. Some later accelerator programs had been based on object-oriented tools (primarily, C++ language). These range from systems for advanced theoretical studies to control system software. For the new generations of accelerators it would be desirable to have an integrated platform in which all simulation and control tasks will be considered with one point of view. In this report the basic principles of an object-oriented platform for accelerator research software (PAC++) are suggested and analyzed. Primary objectives of this work are to enable efficient self-explaining realization of the accelerator concepts and to provide an integrated environment for the updating and the developing of the code.

Authors:
; ;
Publication Date:
Research Org.:
Superconducting Super Collider Lab., Dallas, TX (United States)
Sponsoring Org.:
USDOE, Washington, DC (United States)
OSTI Identifier:
82449
Report Number(s):
SSCL-675
ON: DE95011192; TRN: 95:017112
DOE Contract Number:
AC35-89ER40486
Resource Type:
Technical Report
Resource Relation:
Other Information: PBD: Jun 1994
Country of Publication:
United States
Language:
English
Subject:
43 PARTICLE ACCELERATORS; 99 MATHEMATICS, COMPUTERS, INFORMATION SCIENCE, MANAGEMENT, LAW, MISCELLANEOUS; ACCELERATORS; P CODES; PROGRAMMING LANGUAGES; COMPUTER-AIDED DESIGN; PROGRAMMING

Citation Formats

Malitsky, N., Reshetov, A., and Bourianoff, G.. PAC++: Object-oriented platform for accelerator codes. United States: N. p., 1994. Web. doi:10.2172/82449.
Malitsky, N., Reshetov, A., & Bourianoff, G.. PAC++: Object-oriented platform for accelerator codes. United States. doi:10.2172/82449.
Malitsky, N., Reshetov, A., and Bourianoff, G.. Wed . "PAC++: Object-oriented platform for accelerator codes". United States. doi:10.2172/82449. https://www.osti.gov/servlets/purl/82449.
@article{osti_82449,
title = {PAC++: Object-oriented platform for accelerator codes},
author = {Malitsky, N. and Reshetov, A. and Bourianoff, G.},
abstractNote = {Software packages in accelerator physics have relatively long life cycles. They had been developed and used for a wide range of accelerators in the past as well as for the current projects. For example, the basic algorithms written in the first accelerator Program TRANSPORT are actual for design of most magnet systems. Most of these packages had been implemented on Fortran. But this language is rather inconvenient as a basic language for large integrated projects that possibly could include real-time data acquisition, data base access, graphic riser interface modules (GUI), arid other features. Some later accelerator programs had been based on object-oriented tools (primarily, C++ language). These range from systems for advanced theoretical studies to control system software. For the new generations of accelerators it would be desirable to have an integrated platform in which all simulation and control tasks will be considered with one point of view. In this report the basic principles of an object-oriented platform for accelerator research software (PAC++) are suggested and analyzed. Primary objectives of this work are to enable efficient self-explaining realization of the accelerator concepts and to provide an integrated environment for the updating and the developing of the code.},
doi = {10.2172/82449},
journal = {},
number = ,
volume = ,
place = {United States},
year = {Wed Jun 01 00:00:00 EDT 1994},
month = {Wed Jun 01 00:00:00 EDT 1994}
}

Technical Report:

Save / Share: