HepLib: A C++ library for high energy physics
HepLib is a C++ Library for computations in High Energy Physics, it works on top of GiNaC, a well-established C++ library used to perform symbolic computations. HepLib combines serval well-known packages to get high efficiency, including qgraf to generate Feynman aptitudes, FORM to perform Dirac/Color matrix related computations, and FIRE or KIRA for integration-by-parts (IBP) reduction. Another core feature of HepLib lies in the numerical evaluation of master integrals using sector decomposition, which is a general method widely used in high-order numerical computation and has been implemented in many public packages in many different languages, and we present another implementation in the language of C++ with many new features. We use GiNaC to handle the symbolic operations, and export the corresponding integrand into an optimized C++ code, that will be compiled internally and linked dynamically, a customizable numerical integrator is selected to perform the numerical integration, while the integrand can be evaluated in different float precisions, including the arbitrary precision supported by MPFR.