  SIDIS-RC EvGen is a C++ standalone Monte-Carlo event generator for studies of
semi-inclusive deep inelastic scattering (SIDIS) processes at medium to high
lepton beam energies. In particular, the generator contains binary and library
components for generating SIDS events and calculating cross sections for
unpolarized or longitudinally polarized beam and unpolarized, longitudinally or
transversely polarized target. The structure of the generator incorporates
transverse momentum-dependent parton distribution and fragmentation functions,
whereby we obtain multi-dimensional binned simulation results, which will
facilitate the extraction of important information about the three-dimensional
nucleon structure from SIDIS measurements. In order to build this software, we
have used recent elaborate QED calculations of the lowest-order radiative
effects, applied to the leading order Born cross section in SIDIS. In this
paper, we provide details on the theoretical formalism as well as the
construction and operation of SIDIS-RC EvGen, e.g., how we handle the event
generation process and perform multi-dimensional integration. We also provide
example programs, flowcharts, and numerical results on azimuthal transverse
single-spin asymmetries.
