{"title":"cppTPSA/pyTPSA:用于截断幂级数代数的 C++/Python 软件包","authors":"He Zhang","doi":"10.21105/joss.04818","DOIUrl":null,"url":null,"abstract":"The truncated power series algebra (TPSA), also referred to as differential algebra (DA), is a well-established and widely used method in particle accelerator physics and astronomy. The most straightforward usage of TPSA/DA is to calculate the Taylor expansion of a given function at a specific point up to order 𝑛 . In recent years, as the application of TPSA/TA has been extended to other fields, a reusable implementation of TPSA/DA as a modern C++ library or other high level programming language like Python has become desirable. The cppTPSA package implements TPSA/DA in C++11 and provides developers a convenient library with which to build advanced TPSA/DA-based methods. A Python 3 library, pyTPSA, has also been developed based on the C++ lib.","PeriodicalId":503081,"journal":{"name":"Journal of Open Source Software","volume":"30 9","pages":""},"PeriodicalIF":0.0000,"publicationDate":"2024-02-29","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":"{\"title\":\"cppTPSA/pyTPSA: a C++/Python package for truncated\\npower series algebra\",\"authors\":\"He Zhang\",\"doi\":\"10.21105/joss.04818\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"The truncated power series algebra (TPSA), also referred to as differential algebra (DA), is a well-established and widely used method in particle accelerator physics and astronomy. The most straightforward usage of TPSA/DA is to calculate the Taylor expansion of a given function at a specific point up to order 𝑛 . In recent years, as the application of TPSA/TA has been extended to other fields, a reusable implementation of TPSA/DA as a modern C++ library or other high level programming language like Python has become desirable. The cppTPSA package implements TPSA/DA in C++11 and provides developers a convenient library with which to build advanced TPSA/DA-based methods. A Python 3 library, pyTPSA, has also been developed based on the C++ lib.\",\"PeriodicalId\":503081,\"journal\":{\"name\":\"Journal of Open Source Software\",\"volume\":\"30 9\",\"pages\":\"\"},\"PeriodicalIF\":0.0000,\"publicationDate\":\"2024-02-29\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"0\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"Journal of Open Source Software\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://doi.org/10.21105/joss.04818\",\"RegionNum\":0,\"RegionCategory\":null,\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"\",\"JCRName\":\"\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"Journal of Open Source Software","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.21105/joss.04818","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 0
摘要
截断幂级数代数(TPSA),也称为微分代数(DA),是粒子加速器物理学和天文学中一种成熟且广泛使用的方法。TPSA/DA 最直接的用法是计算给定函数在特定点的𝑛阶泰勒展开。近年来,随着 TPSA/TA 的应用扩展到其他领域,TPSA/DA 作为现代 C++ 库或其他高级编程语言(如 Python)的可重用实现已变得非常必要。cppTPSA 软件包在 C++11 中实现了 TPSA/DA,为开发人员提供了一个方便的库,用于构建基于 TPSA/DA 的高级方法。基于 C++ 库还开发了 Python 3 库 pyTPSA。
cppTPSA/pyTPSA: a C++/Python package for truncated
power series algebra
The truncated power series algebra (TPSA), also referred to as differential algebra (DA), is a well-established and widely used method in particle accelerator physics and astronomy. The most straightforward usage of TPSA/DA is to calculate the Taylor expansion of a given function at a specific point up to order 𝑛 . In recent years, as the application of TPSA/TA has been extended to other fields, a reusable implementation of TPSA/DA as a modern C++ library or other high level programming language like Python has become desirable. The cppTPSA package implements TPSA/DA in C++11 and provides developers a convenient library with which to build advanced TPSA/DA-based methods. A Python 3 library, pyTPSA, has also been developed based on the C++ lib.