{"title":"ACTest:分析延拓方法和代码的测试工具包","authors":"Li Huang","doi":"10.1016/j.cpc.2025.109785","DOIUrl":null,"url":null,"abstract":"<div><div>ACTest is an open-source toolkit developed in the Julia language. Its central goal is to automatically establish analytic continuation testing datasets, which include a large number of spectral functions and the corresponding Green's functions. These datasets can be used to benchmark various analytic continuation methods and codes. In ACTest, the spectral functions are constructed by a superposition of randomly generated Gaussian, Lorentzian, <em>δ</em>-like, rectangular, and Rise-And-Decay peaks. The spectra can be positive definite or non-positive definite. The corresponding energy grids can be linear or non-linear. ACTest supports both fermionic and bosonic Green's functions on either imaginary time or Matsubara frequency axes. Artificial noise can be superimposed on the synthetic Green's functions to simulate realistic Green's functions obtained by quantum Monte Carlo calculations. ACTest includes a standard testing dataset, namely ACT100. This built-in dataset contains 100 testing cases that cover representative analytic continuation scenarios. Now ACTest is fully integrated with the ACFlow and MiniPole toolkits. It can directly invoke the analytic continuation methods as implemented in the ACFlow and MiniPole toolkits for calculations, analyze calculated results, and evaluate computational efficiency and accuracy. ACTest comprises many examples and comprehensive documentation. The purpose of this paper is to introduce the major features and usages of the ACTest toolkit. The benchmark results on the ACT100 dataset for the maximum entropy method, which is probably the most popular analytic continuation method, are also presented.</div></div><div><h3>Program summary</h3><div><em>Program title:</em> ACTest</div><div><em>CPC Library link to program files:</em> <span><span>https://doi.org/10.17632/xvt3wzgt65.1</span><svg><path></path></svg></span></div><div><em>Developer's repository link:</em> <span><span>https://github.com/huangli712/ACTest</span><svg><path></path></svg></span></div><div><em>Licensing provisions:</em> GPLv3</div><div><em>Programming language:</em> Julia</div><div><em>Nature of problem:</em> Analytic continuation is an essential step in quantum many-body computations. It enables the extraction of observable spectral functions from imaginary time or Matsubara frequency Green's functions. Though numerous methods for analytic continuation were proposed, they have not been systematically and fairly benchmarked due to the lack of testing software and datasets.</div><div><em>Solution method:</em> At first, a few peaks (features) are generated randomly. Then, they are superimposed to form the spectral function. Finally, the Green's function is reconstructed from the spectral function via the Laplace transformation. This procedure allows for the generation of lots of spectral functions and corresponding Green's functions, creating datasets for testing analytic continuation methods and codes.</div></div>","PeriodicalId":285,"journal":{"name":"Computer Physics Communications","volume":"316 ","pages":"Article 109785"},"PeriodicalIF":3.4000,"publicationDate":"2025-07-30","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":"{\"title\":\"ACTest: A testing toolkit for analytic continuation methods and codes\",\"authors\":\"Li Huang\",\"doi\":\"10.1016/j.cpc.2025.109785\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"<div><div>ACTest is an open-source toolkit developed in the Julia language. Its central goal is to automatically establish analytic continuation testing datasets, which include a large number of spectral functions and the corresponding Green's functions. These datasets can be used to benchmark various analytic continuation methods and codes. In ACTest, the spectral functions are constructed by a superposition of randomly generated Gaussian, Lorentzian, <em>δ</em>-like, rectangular, and Rise-And-Decay peaks. The spectra can be positive definite or non-positive definite. The corresponding energy grids can be linear or non-linear. ACTest supports both fermionic and bosonic Green's functions on either imaginary time or Matsubara frequency axes. Artificial noise can be superimposed on the synthetic Green's functions to simulate realistic Green's functions obtained by quantum Monte Carlo calculations. ACTest includes a standard testing dataset, namely ACT100. This built-in dataset contains 100 testing cases that cover representative analytic continuation scenarios. Now ACTest is fully integrated with the ACFlow and MiniPole toolkits. It can directly invoke the analytic continuation methods as implemented in the ACFlow and MiniPole toolkits for calculations, analyze calculated results, and evaluate computational efficiency and accuracy. ACTest comprises many examples and comprehensive documentation. The purpose of this paper is to introduce the major features and usages of the ACTest toolkit. The benchmark results on the ACT100 dataset for the maximum entropy method, which is probably the most popular analytic continuation method, are also presented.</div></div><div><h3>Program summary</h3><div><em>Program title:</em> ACTest</div><div><em>CPC Library link to program files:</em> <span><span>https://doi.org/10.17632/xvt3wzgt65.1</span><svg><path></path></svg></span></div><div><em>Developer's repository link:</em> <span><span>https://github.com/huangli712/ACTest</span><svg><path></path></svg></span></div><div><em>Licensing provisions:</em> GPLv3</div><div><em>Programming language:</em> Julia</div><div><em>Nature of problem:</em> Analytic continuation is an essential step in quantum many-body computations. It enables the extraction of observable spectral functions from imaginary time or Matsubara frequency Green's functions. Though numerous methods for analytic continuation were proposed, they have not been systematically and fairly benchmarked due to the lack of testing software and datasets.</div><div><em>Solution method:</em> At first, a few peaks (features) are generated randomly. Then, they are superimposed to form the spectral function. Finally, the Green's function is reconstructed from the spectral function via the Laplace transformation. This procedure allows for the generation of lots of spectral functions and corresponding Green's functions, creating datasets for testing analytic continuation methods and codes.</div></div>\",\"PeriodicalId\":285,\"journal\":{\"name\":\"Computer Physics Communications\",\"volume\":\"316 \",\"pages\":\"Article 109785\"},\"PeriodicalIF\":3.4000,\"publicationDate\":\"2025-07-30\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"0\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"Computer Physics Communications\",\"FirstCategoryId\":\"101\",\"ListUrlMain\":\"https://www.sciencedirect.com/science/article/pii/S0010465525002875\",\"RegionNum\":2,\"RegionCategory\":\"物理与天体物理\",\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"Q1\",\"JCRName\":\"COMPUTER SCIENCE, INTERDISCIPLINARY APPLICATIONS\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"Computer Physics Communications","FirstCategoryId":"101","ListUrlMain":"https://www.sciencedirect.com/science/article/pii/S0010465525002875","RegionNum":2,"RegionCategory":"物理与天体物理","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"Q1","JCRName":"COMPUTER SCIENCE, INTERDISCIPLINARY APPLICATIONS","Score":null,"Total":0}
ACTest: A testing toolkit for analytic continuation methods and codes
ACTest is an open-source toolkit developed in the Julia language. Its central goal is to automatically establish analytic continuation testing datasets, which include a large number of spectral functions and the corresponding Green's functions. These datasets can be used to benchmark various analytic continuation methods and codes. In ACTest, the spectral functions are constructed by a superposition of randomly generated Gaussian, Lorentzian, δ-like, rectangular, and Rise-And-Decay peaks. The spectra can be positive definite or non-positive definite. The corresponding energy grids can be linear or non-linear. ACTest supports both fermionic and bosonic Green's functions on either imaginary time or Matsubara frequency axes. Artificial noise can be superimposed on the synthetic Green's functions to simulate realistic Green's functions obtained by quantum Monte Carlo calculations. ACTest includes a standard testing dataset, namely ACT100. This built-in dataset contains 100 testing cases that cover representative analytic continuation scenarios. Now ACTest is fully integrated with the ACFlow and MiniPole toolkits. It can directly invoke the analytic continuation methods as implemented in the ACFlow and MiniPole toolkits for calculations, analyze calculated results, and evaluate computational efficiency and accuracy. ACTest comprises many examples and comprehensive documentation. The purpose of this paper is to introduce the major features and usages of the ACTest toolkit. The benchmark results on the ACT100 dataset for the maximum entropy method, which is probably the most popular analytic continuation method, are also presented.
Program summary
Program title: ACTest
CPC Library link to program files:https://doi.org/10.17632/xvt3wzgt65.1
Nature of problem: Analytic continuation is an essential step in quantum many-body computations. It enables the extraction of observable spectral functions from imaginary time or Matsubara frequency Green's functions. Though numerous methods for analytic continuation were proposed, they have not been systematically and fairly benchmarked due to the lack of testing software and datasets.
Solution method: At first, a few peaks (features) are generated randomly. Then, they are superimposed to form the spectral function. Finally, the Green's function is reconstructed from the spectral function via the Laplace transformation. This procedure allows for the generation of lots of spectral functions and corresponding Green's functions, creating datasets for testing analytic continuation methods and codes.
期刊介绍:
The focus of CPC is on contemporary computational methods and techniques and their implementation, the effectiveness of which will normally be evidenced by the author(s) within the context of a substantive problem in physics. Within this setting CPC publishes two types of paper.
Computer Programs in Physics (CPiP)
These papers describe significant computer programs to be archived in the CPC Program Library which is held in the Mendeley Data repository. The submitted software must be covered by an approved open source licence. Papers and associated computer programs that address a problem of contemporary interest in physics that cannot be solved by current software are particularly encouraged.
Computational Physics Papers (CP)
These are research papers in, but are not limited to, the following themes across computational physics and related disciplines.
mathematical and numerical methods and algorithms;
computational models including those associated with the design, control and analysis of experiments; and
algebraic computation.
Each will normally include software implementation and performance details. The software implementation should, ideally, be available via GitHub, Zenodo or an institutional repository.In addition, research papers on the impact of advanced computer architecture and special purpose computers on computing in the physical sciences and software topics related to, and of importance in, the physical sciences may be considered.