-
Notifications
You must be signed in to change notification settings - Fork 310
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Update cmake files in the examples related to HepMC and event generators #45
base: master
Are you sure you want to change the base?
Conversation
Hi @gcosmo , @WitekPokorski , if needed I can split this PR even into smaller pieces. |
Hi @andriish , The examples in the As PRs from GitHub have to be transported to the internal Geant4 development GitLab repository, it would be easier to review a final PR (with the complete update that should be included in Geant4) and this should also include the update of the documentation (the README file in each example and each example category) for all modified examples/categories. From just this PR it is not possible to see (and so to review) where the added files are needed or how they should be used. What do you(@WitekPokorski , @drbenmorgan) think? Best regards, |
Hi @ihrivnac , there are two issues:
so some minimally working configuration for the Pythia6/Pythia8 is needed. The updated configurations are not super complex configurations, but these are just "OK".
The added files are needed just to compile the examples. The current version of the examples does not work. One can understand it easily even w/o compiling anything, just looking at the CMakeLists.txt in the examples. E.g. the LHAPDF libraries will link only if found in the standard location, no way to specify where Pythia installation is + linkage problems etc. Best regards, Andrii |
Some more descriptions of new files:
Hopefully, that helps. Tag @ihrivnac , @drbenmorgan , @jrmadsen , @WitekPokorski |
Hi @andriish , Thank you for more explanation; I used to test the HepMC examples with just the ascii files input and did not pay attention to the pythia6 option. On the other hand, I still do not see where LHAPDF or Pythia8 is used/linked. The procedure how to compile with Pythia6 is described in the "decayer6" example documentation: and using the However when running the
Any idea ? Can you let me know your versions of HepMC and Pythia6? |
Hi @ihrivnac ,
LHAPDF is needed to generate Pythia6 and Pythia8 events in pp collisions. W/o LHAPDF some internal dummy routines of Pythia6 and Pythia8 will be used, but no reasonable events will be generated and some crashes will be possible.
Pythia8 is used in
On CentOS8: On Fedora35: Please note that I compile and link the examples with preinstalled Geant4-11.0.0 -- see the procedure in CI script Also, I've added the tests explicitly to the current CI
and everything works. You can see the log files in "actions" of my fork -- I've added you to that project. Best regards, |
@ihrivnac
with
Best regards, Andrii |
Hi @ihrivnac , that is 6.4.0 and I install it as
but it should not matter. Also, in other branch I've implemented downloading and compilation of pythia6 in cmake. In any case, I would suggest to merge the changes as it is already an improvement over the existing setup (which does not work neither for me or for you, right?). Best regards, |
Hi @andriish , I compiled with LHAPDF, and this did not solve the problem. There is still the same break at the pythi6 initialization. I searched the output from this test in the log in your MacOS CI and found the errors showing that pythia6 generator has not run al all (see below). As I develop and test on MacOS, that is one of the supported and tested Geant4 platforms., we need to understand what's wrong here before proposing the merge request in the Geant4 development repository. Best regards,
|
Hi @ihrivnac , You are right, it was not running. Will try to make updates that make this branch work. BEst regards, Andrii |
Hi @ihrivnac , hopefuly this will work for you as well. Please run cmake with -DPYTHIA6_INTERNAL=ON. Pythia6 will be downloaded and compiled automatically. Best regards, |
Hi @andriish , I tried out your update, but this leads to the linking errors below. Also, I do not find the CMake instructions for downloading Pythia6, but just see copying the pynit.f file from the upper directory into the examples. Could you, also explain, what is wrong in the original pythia6 code that needed your fix? We use pythia6 in the ALICE framework and do not need to patch this subroutine here. I have proposed a merge request in the Geant4 development gitlab with the compilation fix in HepMCEx01 stepping action class due to changes in G4String in Geant4 11, that will go also on the next patch. For the rest, we need to understand what's wrong with this pythia6 part. Best regards,
|
Hi @ihrivnac , sorry for the silence as well. It seems I did not get any mails about your answer.
with
Best regards, Andrii |
@andriish, I'm just going through our current PRs, is there any update on this? |
This PR is the first step to add HepMC3-based examples to Geant4. It concentrates mostly on the improvements to the currently used cmake build system for the current examples (i.e. HepMC2-based examples).
Please squash the commits.
In this PR:
The PR also includes a simple CI, which tests the compilation of the examples.
The CI should be removed before the merge.
Tag @jrmadsen @drbenmorgan . It would be nice to tag Witold here, but I cannot find him in the list of members.
Will have to write a mail.
Best regards,
Andrii