The SDE integration with HelMod results in a quite expensive effort from the computational point of view since,
to minimize the uncertainties, an huge amount of event should be integrated from Earth to heliosphere boundary.

Monte Carlo integration allows us to evaluate the normalized probability function $$G(R_0|R)$$ that a particle observed at Earth with rigidity $$R_0$$ entered into the heliosphere with rigidity $$R$$.
Thus, the modulated spectrum at specific energy $$R_0$$ is proportional to:
\label{eq::PyMod_modulation}
J_{mod}(R_0)= \int_0^\infty J_{LIS}(R)G(R_0|R)dR.

Once that $$G(R_0|R)$$ was evaluated, using the numerical approximation, it is possible to apply the modulation directly to LISs provided by GALPROP.

The effect of propagation in heliosphere is then evaluated using a normalized probability function pre-evaluated with HelMod using parameters described in previous section.
We developed a python script that read GALPROP output and provide modulated spectrum for periods of selected experiments.

Note: the actual archives evaluate $$G(E_0|E)$$ as function of Kinetic energy per nucleon. This imply equation (1) to be modified as described in Bobik et al 2016.

### Download latest released version (see availability)

HelMod data sets and results can be freely downloaded or copied. However, the user should make the appropriate acknowledgment or citation, e.g., see  Citations or Bibliography  pages.

### How to install and configure

install python (>=2.7, >3.0) packages

Download  last Python Module and the desidered Archive. The archive is provided in tgz format, thus it needs to be first unpacked with the command tar -xvzf <ArchiveName>.tgz

#### The archive structure:

An Archive contains msut contains the follows files:

• ExpList.list   : List of nuclei and isotopes simulated (to not modify)
• ExpList_Plot.list  : List of nuclei available in the archive, reference and plots properties (do not modify first and second columns, the others can be updated to modify the output plots)
• ParameterSimulated.list : list of folders in the form RawPar_HelMod4_XX,  (at least one line should start with '+', if not, please add it to first line)
• ParameterSimulated_DB.list: list of folders in the form RawPar_HelMod4_XX, with description
• Version.txt : Version notes
• DataTXT : experimental binnign used for simulations
• RawPar_HelMod4_00 : HelMod simulations files

#### How to use the module:

The usage of the module require three elements:

• An Helmod Archive unpacked in some known folder. E.g. let's <ArcPath>=/home/test/Archive1 the place where Archive1.tgz was unpacked
• A LIS from galprop fits file OR plain text file format. By default LIS must be in galprop fits (.gz extension). a proper option, in command line, allow to use plain text file format.
• The label of the the ion/dataset (hereafter called <ExpNameKey>) that are intended to be modulated.

The list of available <ExpNameKey>  in each archive may be found in the file ExpList_Plot.list or using the command-line

python3 SolarModulation_Galprop_<version>.py -a <ArcPath> -l.

The basic command to get Solar modulated spectrum is:

python3 SolarModulation_Galprop_<version>.py -a <ArcPath> --LIS <GALPROPFits.gz> --SimName <ExpNameKey>

other available options:

 -p  Choose a different set of parameters. The list of available parameter set and its name is available in ParameterSimulated_DB.list. file. -h help description --MakePlot Create a Plot in png format -t allow to use a TXT file for Input LIS instead of Galprop File. --SumAllIsotpes The result is the sum of modulated spectra over all available Isotopes for the choosen Ion. otherwise only main isotopes LIS is considered. note: with plain text file this features have no effect. --PrintLIS Print Complete LIS used for Modulation (note that if --joinIsotope is Activeted output LIS is the sum in Rigidity of all isotopes --SimUnit  force the Output Unit of the module (Tkin: Kinetic Energy per Nucleon [GeV/n] Rigi: Rigidity [GV]) by deafult the output is choosen accordly to the original format of the dataset. -o  Use custom name for outputfile

#### LIS in text format

User can provide a txt file for LIS with the follow characteristics:

• The file must be a text file.
• The file must contains two columns only:
1. one for kinetic energy per nucleon [GeV]
2. the second for the LIS flux [ (m$$^2$$ s sr GeV)$$^{-1}$$].
• The file can contains comments. Line starting with '#' character will be ignored.