Skip to content

Commit

Permalink
Merge pull request #29 from Lovepreet6/develop
Browse files Browse the repository at this point in the history
Updated the README, src/main.cxx, and added the Test_EIC.json, test sample files.
  • Loading branch information
sjdkay authored Oct 28, 2024
2 parents 7369ae2 + c087fd4 commit e12ed80
Show file tree
Hide file tree
Showing 28 changed files with 1,625 additions and 6,799 deletions.
3 changes: 1 addition & 2 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -3,12 +3,11 @@ data/RootFiles/
data/LundFiles
data/OutputFiles
data/OutputFiles/
*.root
*.lund
build/
*_job.txt
Config_EIC_*
sjdkay_job.txt
*#*
.cc*
.h*
.h*
265 changes: 0 additions & 265 deletions HEPMC3_Converter.C

This file was deleted.

44 changes: 43 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -176,7 +176,49 @@ The jobs the script creates and submits all execute the Process_EIC.csh script d

### json_examples

- There were several .json files clogging up the main directory, many of these were very outdated. As such, I've moved them all to a subfolder -
- There were several .json files clogging up the main directory, many of these were very outdated. These outdated files are now in a subfolder -
- json_examples
- This folder has .json config files for a variety of different conditions.
- Due to several of them being quite outdated, the Config_EIC.json file in the main (the directory of this README) directory should be consulted to see the options that are actually available.

## File/Directory Structure

The files within the top level directory and the directory structure of the generator are outlined below. Note that files within subdirectories are not outlined in full. Please refer to comments within each source/header files and README files within subdirectories (where applicable) for details on individual files within subdirectories.

### Top Level Directory Files

- [Batch_Submission_EIC.sh](Batch_Submission_EIC.sh) - Shell script to generate and submit EIC event generation jobs to a local batch queueing system. See file comments and description above for details on usage.
- [JLab_Batch_Submission.sh](JLab_Batch_Submission.sh) - Shell script to generate and submit EIC event generation jobs to the JLab farm batch queueing system. See file comments and description above for details on usage.
- [Process_EIC.csh](Process_EIC.csh) - .csh script that creates a `.json` config file based upon inputs and runs DEMPgen with produced configuration file. See file comments and description above for details on usage.
- [Process_EIC_iFarm.csh](Process_EIC_iFarm.csh) - .csh script that creates a `.json` config file based upon inputs and runs DEMPgen with produced configuration file. This version is configured for use on the JLab iFarm system. See file comments and description above for details on usage.
- [Config_EIC.json](Config_EIC.json) - An example `.json` config file for EIC event generation. Used by shell scripts above. See comments within file for details on flags.
- [Config_SoLID.json](Config_SoLID.json) - An example `.json` config file for SoLID event generation. See comments within file for details on flags.
- [CMakeLists.txt](CMakeLists.txt)- CMakeLists.txt file.
- [LICENSE](LICENSE) - Copyright and license information.
- [EvGenFlowChart.xml](EvGenFlowChart.xml) - Event generation flow chart.
- [Test_EIC.json](Test_EIC.json) - `.json` file with all configuration options to gereate a test EIC event sample. See `reference_README.md` within the `reference_output` directory for details.
- [README.md](README.md) - The README file.

### Directory Structure

- [data/](data/) - Stores output files from DEMPgen.
- [data/input/](data/input) - Contains input cross-section files.
- [debug/](debug) - Contains debug files for the SoLID module.
- [include/](include) - Contains header files for the SoLID module and the following subdirectory:
- [json/](include/json/) - Contains `.json` files associated with the header files for the SoLID module.
- [src/](src/) - Contains source files for DEMPgen and the following subdirectories:
- [eic_evgen/](src/eic_evgen/) - Contains source files, header files, and pion cross-section parameterization files for the EIC module. Also contains the following subdirectories:
- [CrossSection_Params/](src/eic_evgen/CrossSection_Params/) - Contains kaon cross-section parameterization files for the EIC module.
- [process_routine/](src/eic_evgen/process_routine/) - Contains the main DEMPgen processing routine.
- [Dec2023_ePIC_Simulation_Campaign/](Dec2023_ePIC_Simulation_Campaign/) - Contain information about the files submitted to the ePIC simulation campaign in December 2023 respectively, see documentation within directory for more details.
- [Jul2024_ePIC_Simulation_Campaign/](Jul2024_ePIC_Simulation_Campaign/) - Contain information about the files submitted to the ePIC simulation campaign in July 2024, see documentation within directory for more details.
- [reference_output/](reference_output/) - Contains test sample files and the instructions on how to reproduce them, as detailed in the `reference_README.md` file within this directory.

### Instructions for Comprehensive Test Run

Instructions for a comprehensive test run, and a reference file to compare to (using for example, diff) are included in -

- [reference_output/reference_README.md](reference_output/reference_README.md)

## License
DEMPgen is licensed under the GNU General Public License v3.0.
41 changes: 41 additions & 0 deletions Test_EIC.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
// SJDK - 09/02/22 - University of Regina

// !!!!! PLEASE READ THE COMMENTS BELOW !!!!!
// This is a template config file for running DEMPGen for EIC events, consult this file for the availble options
// DO NOT EDIT THIS FILE - It is used by the two shell scripts in this folder to automatically create a new config file with the conditions you want
// Either copy this file to a new name and edit it as you want OR just execute the shell scripts
// !!!!! PLEASE READ THE COMMENTS ABOVE !!!!!

{
// This is an exmaple Json configuration file that will accept
// parameters for both EIC and Solid simulation.
//Config
// All values should use units of MeV for energies and momenta,
// and degrees for angles.
// n_events indicates number of attempts
// "experiment" : "eic" or "solid"
"experiment" : "eic",

"file_name" : "DEMPgen_EIC_test",
"n_events" : 100000,
"generator_seed": 24432,

//**************************************
/// This section if for EIC simulation only
"Kinematics_type" : 1, // Kinematics type (1->FF, 2->TSSA)
"ROOTOut": "true", // Enable or disable root file output, true or false
"ejectile": "Pion+", // Choices: omega, pi+, pi0, K+
"recoil_hadron": "neutron", // Choices: Neutron, proton, Lambda or Sigma0
"ebeam": 5, // Electron beam energy in GeV
"hbeam": 100, // Hadron beam energy in GeV
"hbeam_part":"Proton", // Hadron beam particle, proton, deut or helium3, work in progress, will need to be added to shell script later on as an argument
"OutputType": "HEPMC3", // choices: LUND (Docker), Pythia6 (ECCE Fun4All) or HEPMC3 (ePIC)
"det_location": "ip6", // choices: ip6 for STAR, ip8 for PHENIX
"calc_method": "Analytical", // choices: Analytical or Solve, affects how the ejectile/recoil hadron 4-vectors are calculated. Default is analytical
"Ee_Low": 0.5, // The minimum scattered electron energy that will be generated as a fraction of the electron beam energy
"Ee_High": 2.5, // The maximum scattered electron energy that will be generated as a fraction of the electron beam energy
"e_Theta_Low": 60.0, // The minimum scattered electron angle (theta) that will be generated in degrees
"e_Theta_High": 175.0, // The maximum scattered electron angle (theta) that will be generated in degrees
"EjectileX_Theta_Low": 0.0, // The minimum ejectile angle (theta) that will be generated in degrees
"EjectileX_Theta_High": 100.0, // The maximum ejectile angle (theta) that will be generated in degrees
}
Loading

0 comments on commit e12ed80

Please sign in to comment.