dataesr/scientific-paragraphs-categorization huggingface dataset:
not yet practicable for beyond the Standard Model searches in general. Another alternative way, which does not rely on event simulation, uses results published by the experimental collaborations in the context of so-called Simplified Models Spectra, as in the works of Refs. [6, 7]. While much faster, this is, however, less general. In the present work, we focus on the expert mode of the MadAnalysis 5 program  [1, 8]  dedicated to the implementation of any analysis based on a cut-and-count flow (in contrast to analyses relying on multivariate techniques) and the investigation of the associated effects on any Monte Carlo event sample. The implementation of an analysis is facilitated by the large number of predefined functions and methods included in the SampleAnalyzer library shipped with the package, but is however often complicated in cases where one has several sub-analyses which we refer to as regions (with a nod to the terms signal and control regions commonly used in searches for physics beyond the Standard Model).
The complication arose from the internal format handled by SampleAnalyzer, which assumed the existence of a single region. While this assumption is convenient for prospective studies, i. e. , the design of new analyses, it is rarely fulfilled by existing analyses that one may want to recast. In order to allow the user to both design and recast analyses, we have consequently extended the Sample-Analyzer internal format to support analyses with multiple regions defined by different sets of cuts. We have also expanded the code with extra methods and routines to facilitate the implementation of more complex analyses by the user. In the context of analyses which effectively contain subanalyses, a further useful classification of cuts can be made: namely into those which are common/shared by different regions, and those which are not, the latter serving to define the different sub-analyses themselves.
In the simple style of implementation of the cuts above, this is unavoidable: condition 4 must be checked both inside and outside the scope of condition 3. With the two region-specific cuts that we have here, there is only one such clumsy duplication present in the code. However as the number of such cuts grows, the situation rapidly gets worse. For instance, considering growing the decision tree shown in Figure  1  to include N region-specific cuts, combined in all possible permutations to define 2 N regions would deepen the nesting of the above pseudo-code and lead to 2 N -(N + 1) unnecessary duplications of checks. Moreover, each of those needs to be carefully implemented by the user in the correct scope, a task becoming less and less straightforward for large values of N. Ideally the algorithm should be structured so that there is no unnecessary duplication, which is one of the new features of the latest version of SampleAnalyzer, the C++ core of the MadAnalysis 5 program.
Both can be obtained from the MadAnalysis 5 website, https://launchpad. net/madanalysis5 and all the features described in this paper are available from version 1. 1. 10 of the code onwards. This document supersedes the previous version of the manual for the expert mode of the program  [1]. The remainder of this paper is organized as follows. In Section 2, we recall the basic functionalities of MadAnalysis 5 for the implementation of physics analyses in the expert mode of the program, which has been extended according to the needs of our users. Moreover, we introduce the new features of the SampleAnalyzer kernel. Two concrete examples are then provided in Section 3: the first is the reimplementation of a CMS search for supersymmetric partners of the top quark in events with a single lepton and missing energy  [9] , and the second the design of a monotop analysis where the monotop system decays in the hadronic mode  [10].
It returns a boolean quantity indicating whether the initialization procedure has been achieved properly. If not, the execution of the main program is stopped. The second method, named Execute, is the core of the analysis and is applied to each simulated event provided by the user. Among others things, it takes care of the application of the selection cuts and the filling of the various histograms. This function returns a boolean quantity that can be used according to the needs of the user, although it is by default not employed. Finally, the last function, a function of void type called Finalize, is called once all events have been read and analyzed. Moreover, the user is allowed to define his/her own set of functions and variables according to his/her purposes. The splitting of the analysis into regions, the application of the selection criteria, and the filling of histograms are all controlled through the automatically initialized object Manager() -a pointer to an instance of the class RegionSelectionManager.
Initialization of an analysis When the analysis is executed from a shell, the program first calls the Initialize method before starting to analyze one or several event samples. Prior to the declaration of regions, histograms and cuts, we first encourage the user to include an electronic signature to the analysis being implemented and to ask the program to display it to the screen. Although this is neither mandatory nor standardized, it improves the traceability of a given analysis and provides information to the community about who has implemented the analysis and which reference works have been used. In particular for analyses that are being made public, we strongly recommend including at least the names and email addresses of the authors, a succinct description of the analysis and related experimental notes or publications.
IsSurviving(. ) Takes as an argument the name of a region (a string). The method returns true if the region survives all cut applied so far, false otherwise. SetCurrentEventWeight(. ) Modifies the weight of the current event to a user-defined value passed as an argument (given as a floating-point number). As already mentioned, each analysis region must be properly declared within the Initialize function. This is achieved by making use of the AddRegionSelection method of the Re-gionSelectionManager class (see Table  1 ). This declaration requires provision of a name (as a string) which serves as a unique identifier for this region within both the code itself (to link the region to cuts and histograms) and the output files that will be generated by the program. For instance, the declaration of two regions, dedicated to the analysis of events with a missing transverse energy / E T > 200 GeV and 300 GeV could be implemented as Manager()->AddRegionSelection("MET>200"); Manager()->AddRegionSelection("MET>300"); As shown in these lines of code, the declaration of the two regions is handled by the Manager() object, an instance of the RegionSelectionManager class that is automatically included with any given analysis.
As a result, two new regions are created and the program internally assigns the intuitive identifiers "MET>200" and "MET>300" to the respective regions. Once all regions have been declared, the user can continue with the declaration of cuts and histograms. As for regions, each declaration requires a string name which acts as an identifier in the code and the output. Histogram declaration also asks for the number of bins (an integer number) and the lower and upper bounds defining the range of the x-axis (two floatingpoint numbers) to be specified. Both histograms and cuts must also be associated with one or more regions. In the case of cuts, this finds its source at the conceptual level: each individual region is defined by its unique set of cuts. In the case of histograms, this enables one to establish the distribution of a particular observable after some region-specific cuts have been applied.
The association of both types of objects to their regions follows a similar syntax, using an optional argument in their declaration. This argument is either a string or an array of strings, each being the name of one of the previously declared regions. If this argument is absent, the cut/histogram is automatically associated with all regions. This feature can be used, for example, for preselection cuts that are requirements common to all regions. As an illustrative example, the code Manager()->AddCut("1lepton"); std::string SRlist[] = {"MET>200","MET>300"}; Manager()->AddCut("MET>200 GeV",SRlist); would create two preselection cuts, "1lepton" and "MET>200 GeV", and assign them to the two previously declared regions "MET>200" and "MET>300". Although both cuts are associated with both regions, for illustrative purposes we have shown two methods of doing this -using the syntax for automatically linking to all regions (here there are two) and explicitly stating mc()->beamE().
3. 8). However, the definitions of Eq. (  1 ) may be not appropriate if the user wants to include only specific visible/hadronic particles in the sums. In this case, he/she should perform their implementation within the Execute function of the analysis according to his/her needs. The entire set of properties that can be employed to analyze a Monte Carlo event is shown in Table  3. For example, the selection of all the final-state electrons and positrons that are present in an event and whose transverse momentum is larger than 50 GeV could be implemented as The first line of the code above indicates the declaration of a vector, dubbed electrons, of pointers to (constant) MCPar-ticleFormat objects that contain the selected electrons. With the next block of C++ commands, we loop over all the event particles (the for loop) and store the current particle into a temporary variable prt.
Finalizing an analysis Once all the events have been processed, the program calls the function Finalize. The user can make use of it for drawing histograms or deriving cut-flow charts as indicated in the manual for older versions of the program  [1] ; however, from the version of MadAnalysis 5 introduced in this paper onwards, the Finalize function does not need to be implemented anymore. Output files written according to the Saf format (see Section 2. 5) are automatically generated.
Message services The C++ core of MadAnalysis 5 includes a class of functions dedicated to the display of text on the screen at the time of the execution of the analysis. Whereas only two distinct levels of message are accessible by using the standard C++ streamers (std::cout and std:cerr for normal and error messages), the SampleAnalyzer library enables the user to print messages that can be classified into four categories. In this way, information (the INFO function), warning (the WARNING function), error (the ERROR function) and debugging (the DEBUG function) messages can be displayed as in the following sample of code, Additionally, warning and error messages provide information on the line number of the analysis code that is at the source of the message. The effect of a given message service can finally be modified by means of the methods presented in Table  7.
PHYSICS->recConfig(). UseDeltaRIsolation(dR); where dR is a floating-point variable with the chosen cone size. The user can instead require the program to tag leptons as isolated when both the sum of the transverse momenta of all tracks in a cone (of radius fixed at the level of the detector simulation) centered on the lepton is smaller than a specific threshold and when the amount of calorimetric energy in this cone, calculated relative to the sum of the transverse momenta of all tracks in the cone, is smaller than another threshold. This uses the information provided by the sumPT_isol() and ET_PT_isol() methods of the RecLeptonFormat class (see Table  6 ) and can be activated by implementing PHYSICS->recConfig(). UseSumPTIsolation(sumpt,et_pt); where sumpt and et_pt are the two mentioned thresholds.
Compiling and executing the analysis In Section 2. 1, we have pointed out that the Build subdirectory of the analysis template contains a Makefile script readily to be used. In this way, the only task left to the user after having implemented his/her analysis is to launch this script in a shell, directly from the Build directory. This leads first to the creation of a library that is stored in the Build/Lib subdirectory, which includes all the analyses implemented by the user and the set of classes and methods of the SampleAnalyzer kernel. Next, this library is linked to the main program and an executable named MadAnalysis5Job is generated (and stored in the Build directory). The program can be run by issuing in a shell the command. /MadAnalysis5Job <inputfile> mcConfig(). AddHadronicId(. ) Adds a particle species, identified via its Particle Data Group code (an integer number given as argument), to the list of hadronizing particles.
return; where we assume that a cut "VetoIsTr" has been declared in the analysis initialization method. The validation of our reimplementation relies on the comparison of results obtained with MadAnalysis 5 with those of the CMS analysis note. We start from parton-level event samples that describe the supersymmetric signal in the context of specific benchmark scenarios, and which have been provided by the CMS collaboration. We then make use of the Pythia 6 program  [28]  for parton showering and hadronization, and of the previously mentioned modified version of the Delphes 3 package  [4, 21]  for a simulation of the detector response which uses the CMS detector description of Ref. [29]. Our final number of events are normalized to a signal cross section including the merging of the next-to-leading order result with resummed predictions at the next-to-leading logarithmic accuracy  [30] , σ = 0.
Acknowledgments We are grateful to  S. Kraml ,  J. So  and  P. Wymant  for helpful discussions and remarks, as well as to  A. Alloul ,  J. Andrea ,  J. Bernon ,  S. Bein ,  M. Blanke ,  G. Chalons ,  K. de Causmaecker ,  I. Galon ,  M. Kraft ,  S. Kulkarni ,  A. Mariotti ,  K. Mawatari ,  L. Mitzka ,  G. Perez ,  C. Petersson ,  D. Redigolo ,  T. Schmitt  and  D. Sengupta  for their help in testing and debugging the code. We also thank  J. Alwall ,  R. Frederix ,  F. Maltoni ,  O. Mattelaer  and  T. Stelzer  for their support from the early stages of the MadAnalysis 5 project. EC, BF and CW are greatful to the  LPSC Grenoble  for hospitality. This work has been partially supported by the  Theory-LHC France initiative  of the  CNRS/IN2P3 ,  a Ph. D. fellowship of the French ministry for education and research and the  French ANR  projects  12-BS05-0006 DMAstroLHC  and  12-JS05-002-01 BATS@LHC.
Cosmic-ray antiprotons represent an important channel for dark matter indirectdetection studies. Current measurements of the antiproton flux at the top of the atmosphere and theoretical determinations of the secondary antiproton production in the Galaxy are in good agreement, with no manifest deviation which could point to an exotic contribution in this channel. Therefore, antiprotons can be used as a powerful tool for constraining particle dark matter properties. By using the spectrum of PAMELA data from 50 MV to 180 GV in rigidity, we derive bounds on the dark matter annihilation cross section (or decay rate, for decaying dark matter) for the whole spectrum of dark matter annihilation (decay) channels and under different hypotheses of cosmic-rays transport in the Galaxy and in the heliosphere.
Dark matter density profiles ρ(r, z) adopted in the present analysis. DM therefore require a detailed modeling of cosmic rays transport in the heliosphere. We will therefore study in detail the way in which a charge dependent solar modulation can affect the antiproton fluxes and the ensuing bounds. This will also allow us to quantify the impact of the uncertainties arising from solar modulation modeling. The novel information which can be gained by this analysis is therefore: i) determination of the most updated bounds on DM properties from cosmic antiprotons, with the inclusion in the theoretical calculation of all the most relevant galactic transport phenomena, including reacceleration and energy losses, and the use of the whole spectral information from the PAMELA data set, which allow to set relevant bounds also on light dark matter particles; ii) determination of the impact of solar modulation modeling with explicit quantification of the uncertainty arising from antiproton transport in the heliosphere.
The paper is organized as follows: Section 2 very briefly summarizes the method used to describe the propagation of the antiprotons in our Galaxy. Section 3 deals with the issue of solar modulation, by introducing the fully numerical method employed to model the transport of cosmic rays in the heliosphere. Section 4 provides details about the way in which we calculate the bounds on the DM annihilation cross section (or decay rate). The bounds obtained from the PAMELA data are reported in Section 5, while Section 6 shows the projected sensitivity for future experiments, namely AMS-02. Section 7 summarizes our main conclusions.
However, this model completely neglects the effects of v d , which may significantly alter the propagation path. Polarity A and tilt-angle α are of particular importance in this respect. If q • A < 0, drifts force CRs to diffuse in the region close to the HCS, which enhances their effective propagation time and therefore energy losses, while if q • A > 0 drifts pull CRs outside the HCS, where they can diffuse faster  [50, 51]. As this is the only effect that depends on the charge-sign in this problem, and given that the force-field model does not account for it, the latter model cannot be properly used to describe CR spectra below a few GeV, where charge-sign effects might be relevant  [45, 49, [54] [55] [56] [57]. In our analysis, we adopt the approach recently developed in the numerical program HelioProp  [57]  for the 4D propagation of CRs in the solar system.
We follow the stochastic differential equation approach described in Refs. [50, 51, 58]. The cosmic-rays phase-space density is computed by sampling and averaging upon pseudo-particle trajectories, which are the result of a deterministic component related to the drifts, and of a random walk component, whose amplitude is sampled according to the local diffusion tensor  [59, 60]. Pseudo-particles injected at the Earth position are retro-projected in time inside the solar system until they reach the heliopause, where their properties are recorded. The local interstellar flux, which is effectively a boundary condition for this problem, is then used as an appropriate weight to determine the Earth spectrum. More details on the actual numerical scheme are discussed in Refs. [50, 51, 58]. The solar modulation models adopted in our analyses are tuned for the PAMELA-data taking period by using data on solar activity and on independent analyses on cosmic-rays derived in the same propagation model  [57].
Antiproton fluxes and determination of the bounds on DM properties The most recent, accurate and statistically significant datasets on cosmic antiprotons are currently provided by the space-borne PAMELA detector  [7, 8]  (in the kintic-energy interval between 90 MeV and 240 GeV) and by the balloon-borne BESS-Polar detector  [6]  (from 170 MeV to 3. 5 GeV). The top-of-atmosphere (TOA) fluxes are reported in Fig. 2 , together with the theoretical determination of the antiproton secondary production in the Galaxy obtained in Ref. [33]. The figure shows that secondary production is in good agreement with the data, and therefore additional (exotic) antiproton components, with dominant contribution in the 500 MeV to 50 GeV energy range, appear to be strongly constrained, unless significant modifications to the standard picture of cosmic rays production and propagation are invoked.
Concurrently, solar modulation modeling allows us to use the whole available antiproton energy spectrum, including the low-energy PAMELA data, which are relevant to constrain light dark matter. This explains a manifest difference in the bounds we derive here with those obtained in Ref. [36] : for DM masses below 50-80 GeV we obtain stringent bounds (coming in fact from the low-energy part of the PAMELA dataset), while Ref. [36]  has much looser constraints in that mass range, due to the adoption of PAMELA data only above 10 GeV.
Statistical analysis For definiteness, we will present the bounds obtained from the PAMELA dataset  [7, 8] , since it covers a wider energy range. Since PAMELA reports slightly larger fluxes in the low-energy range, as compared to BESS-Polar, the derived bounds will be slightly more conservative. We will use the PAMELA data in the rigidity range from 50 MV up to 180 GV, for which a statistically relevant measurement of the antiproton flux is available (the highest-rigidity bin, which reaches 350 GV currently provides only an upper limit on the antiproton flux). The bounds on the DM properties are reported as upper limits on the velocity averaged annihilation cross section σ ann v (or lower limits in the case of the decay lifetime τ ) as a function of the DM mass m DM , for the different annihilation/decay channels which can produce antiprotons, and by assuming that the particle DM under study accounts for the whole DM in the Galaxy, regardless of the actual value of its annihilation cross section σ ann v or decay lifetime τ (as it is customary).
These bounds are increased/decreased by about an order of magnitude for the MAX and MIN case. The stringent bounds for DM lighter than about 50 GeV are mostly due to antiprotons arriving at the top-of-atmosphere with energies below 10 GeV. Data at low kinetic energies therefore represent an important tool to probe DM: however, this is also the energy range where solar modulation is operative and therefore a proper treatment of cosmic-rays transport in the heliosphere is important to determine the actual impact of antiproton measurements in this DM mass sector. To this aim we have carefully modeled solar modulation transport with the techniques described in Sec. 3, and we have adopted different models compatible with the PAMELA data-taking period in order to quantify uncertainties on the bounds arising from solar modulation treatment.
On the other hand, the extension of latitudes covered by the International Space Station trajectory will limit the minimal accessible energies, due to the geomagnetic cutoff. We perform the analysis of the prospects for AMS-02 by generating mock data according to the AMS-02 specifications and by adopting on the mock data the same analysis technique described in Sec. 4, and used in Sec. 5 for the analysis of the PAMELA data. The mock data are generated under the hypothesis of the presence of background only, for which we adopt the theoretical estimate of Ref. [33] , i. e. the median curve of Fig. 2. Concerning solar modulation, since the AMS-02 operational period will likely be very long (we consider a duration from 2011 to 2024) and will cover more than one solar cycle, we subdivide the data-taking period in three phases, for which we adopt the following solar modeling: • phase 1 (2011-2013): negative polarity of the SMF and solar activity close to the maximum; for this phase we will consider a tilt angle α = 60  • phase 3 (half 2015-2021): positive polarity of the SMF and a solar activity nearly minimal , for which we use a tilt angle of α = 20 • ) We determine the energy binning of the mock data by first determining the AMS-02 resolution in the energy range of interest (which is here below 500 GeV).