Title :
Expression templates for truncated power series
Author :
Cary, John R. ; Shasharina, Svetlana G.
Author_Institution :
Tech-X Corp., Boulder, CO, USA
Abstract :
The truncated power series technique (differential algebra or DA) is a powerful tool for non-linear map analysis of accelerators. The most natural language for numerical DA´s is C++, since it is object oriented and has operator overloading. Traditional C++, though, can be inefficient for scientific programming due to creation of many temporaries and extra loops in overloaded operators. The recent expression templates technique allows a user to combine the elegance of the object oriented approach with the speed of procedural languages. The way it was created, it is not directly applicable for DA. We created a set of classes whose structure will be suitable for implementing DA vectors and maps. Classes realizing the expression templates technique are separated from the client classes, which allows their reuse for different mathematical concepts. Speed tests on the KCC compiler showed that new C++ classes for DA have the same speed as hand-coded C
Keywords :
C++ listings; beam handling techniques; high energy physics instrumentation computing; particle accelerators; series (mathematics); C++ language; KCC compiler; client classes; differential algebra; expression templates; nonlinear map analysis; object oriented language; overloaded operators; particle accelerators; speed tests; truncated power series; Algebra; Arithmetic; Life estimation; Natural languages; Optical beams; Optical devices; Particle accelerators; Particle beams; Performance loss; System testing;
Conference_Titel :
Particle Accelerator Conference, 1997. Proceedings of the 1997
Conference_Location :
Vancouver, BC
Print_ISBN :
0-7803-4376-X
DOI :
10.1109/PAC.1997.751305