The Joint Accelerator Conferences Website (JACoW) is an international collaboration that publishes the proceedings of accelerator conferences held around the world.
@InProceedings{zhang:napac2019-wepls14, author = {H. Zhang and Y. Zhang}, title = {{A C++ TPSA/DA Library With Python Wrapper}}, booktitle = {Proc. NAPAC'19}, pages = {796--798}, paper = {WEPLS14}, language = {english}, keywords = {multipole, simulation, operation, framework, collective-effects}, venue = {Lansing, MI, USA}, series = {North American Particle Accelerator Conference}, number = {4}, publisher = {JACoW Publishing, Geneva, Switzerland}, month = {10}, year = {2019}, issn = {2673-7000}, isbn = {978-3-95450-223-3}, doi = {10.18429/JACoW-NAPAC2019-WEPLS14}, url = {http://jacow.org/napac2019/papers/wepls14.pdf}, note = {https://doi.org/10.18429/JACoW-NAPAC2019-WEPLS14}, abstract = {Truncated power series algebra (TPSA) or differential algebra (DA) is often used by accelerator physicists to generate a transfer map of a dynamic system. The map then can be used in dynamic analysis of the system or in particle tracking study. TPSA/DA can also be used in some fast algorithms, eg. the fast multipole method, for collective effect simulation. This paper reports a new TPSA/DA library written in C++. This library is developed based on Dr. Lingyun Yang’s TPSA code, which has been used in MAD-X and PTC. Compared with the original code, the updated version has the following changes: (1) The memory management has been revised to improve the efficiency; (2) A new data type of DA vector is defined and supported by most frequently used operators; (3) Support of inverse trigonometric functions and hyperbolic functions for the DA vector has been added; (4) function composition is revised for better efficiency; (5) a python wrapper is provided. The code is hosted at github and available to the public.}, }