• DocumentCode
    335108
  • Title

    Expression templates for truncated power series

  • Author

    Cary, John R. ; Shasharina, Svetlana G.

  • Author_Institution
    Tech-X Corp., Boulder, CO, USA
  • Volume
    2
  • fYear
    1997
  • fDate
    12-16 May 1997
  • Firstpage
    2654
  • 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;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Particle Accelerator Conference, 1997. Proceedings of the 1997
  • Conference_Location
    Vancouver, BC
  • Print_ISBN
    0-7803-4376-X
  • Type

    conf

  • DOI
    10.1109/PAC.1997.751305
  • Filename
    751305