diff --git a/1-first-steps/prerequisites.md b/1-first-steps/prerequisites.md index 9daa9a51a..9aca1269e 100644 --- a/1-first-steps/prerequisites.md +++ b/1-first-steps/prerequisites.md @@ -70,11 +70,11 @@ is available on `cvmfs` and can be set up using: ``` source /cvmfs/sw.hsf.org/key4hep/setup.sh ``` -For compatibility reasons, the previous way of setting up the software +Alternatively, ``` source /cvmfs/fcc.cern.ch/sw/latest/setup.sh ``` -is still available. +also works; `/cvmfs/fcc.cern.ch` hosts alongside the Key4hep stack also FCC-specific software and data, for the purposes of this tutorial sourcing either is equivalent. ## Special notes or alternative cases / settings ### Bash shell diff --git a/2-gen-and-fastsim/2-1-event-generation/README.md b/2-gen-and-fastsim/2-1-event-generation/README.md index bc15263c2..6eaed8683 100644 --- a/2-gen-and-fastsim/2-1-event-generation/README.md +++ b/2-gen-and-fastsim/2-1-event-generation/README.md @@ -25,12 +25,11 @@ source /cvmfs/sw.hsf.org/key4hep/setup.sh :::{admonition} Nota Bene :class: callout -For legacy reasons the following is still provided, fully equivalent to the above ```bash source /cvmfs/fcc.cern.ch/sw/latest/setup.sh ``` -Note however that not all the `cvmfs` tier-1 centers replicate the -`fcc.cern.ch`, so this may lead to slowdowns or even failures. +also works; `/cvmfs/fcc.cern.ch` hosts alongside the Key4hep stack also FCC-specific software and data, for the purposes of this tutorial sourcing either is equivalent. Note however that not all the `cvmfs` tier-1 centers replicate the +`fcc.cern.ch`, so this endpoint might not be available. ::: :::{admonition} Nota Bene diff --git a/2-gen-and-fastsim/2-2-fastsim-delphes/README.md b/2-gen-and-fastsim/2-2-fastsim-delphes/README.md index 1720a8506..9dbd60611 100644 --- a/2-gen-and-fastsim/2-2-fastsim-delphes/README.md +++ b/2-gen-and-fastsim/2-2-fastsim-delphes/README.md @@ -34,7 +34,7 @@ Then, make sure your **setup of the FCC software** is working correctly. A quick which DelphesPythia8_EDM4HEP ``` -If the above command fails without printing a path like `/cvmfs/sw.hsf.org/spackages7/k4simdelphes/00-03-01/x86_64-centos7-gcc11.2.0-opt/7he4m/bin/DelphesPythia8_EDM4HEP`, you need to setup the FCC software stack +If the above command fails without printing a path like `/cvmfs/sw.hsf.org/key4hep/releases/2026-04-08/x86_64-almalinux9-gcc14.2.0-opt/k4simdelphes/00-07-06-36x4ef/bin/DelphesPythia8_EDM4HEP`, you need to setup the FCC software stack ``` source /cvmfs/fcc.cern.ch/sw/latest/setup.sh @@ -43,15 +43,13 @@ source /cvmfs/fcc.cern.ch/sw/latest/setup.sh When sourcing the stack, you should see a message like: ``` - ... Key4HEP release: key4hep-stack/2023-04-08 - ... Use the following command to reproduce the current environment: - ... - source /cvmfs/sw.hsf.org/spackages7/key4hep-stack/2023-04-08/x86_64-centos7-gcc11.2.0-opt/urwcv/setup.sh - ... - ... done. +Setting up the Key4hep software stack release latest-opt from CVMFS +Use the following command to reproduce the current environment: + + source /cvmfs/sw.hsf.org/key4hep/setup.sh -r 2026-04-08 ``` -which means that the version `2023-04-08` of `key4hep-stack` is sourced. +which means that the release `2026-04-08` of the Key4hep stack is sourced. (delphesedm4hep)= @@ -67,9 +65,9 @@ For this tutorial we will consider the following **physics processes**: Let's start by downloading the official pythia cards for the various processes: ```bash -wget https://raw.githubusercontent.com/HEP-FCC/FCC-config/winter2023/FCCee/Generator/Pythia8/p8_ee_ZH_ecm240.cmd -wget https://raw.githubusercontent.com/HEP-FCC/FCC-config/winter2023/FCCee/Generator/Pythia8/p8_ee_ZZ_ecm240.cmd -wget https://raw.githubusercontent.com/HEP-FCC/FCC-config/winter2023/FCCee/Generator/Pythia8/p8_ee_WW_ecm240.cmd +wget https://raw.githubusercontent.com/HEP-FCC/FCC-config/main/FCCee/Generator/Pythia8/p8_ee_ZH_ecm240.cmd +wget https://raw.githubusercontent.com/HEP-FCC/FCC-config/main/FCCee/Generator/Pythia8/p8_ee_ZZ_ecm240.cmd +wget https://raw.githubusercontent.com/HEP-FCC/FCC-config/main/FCCee/Generator/Pythia8/p8_ee_WW_ecm240.cmd ``` @@ -80,7 +78,7 @@ Other detector cards can be found in the `$DELPHES_DIR/cards` directory, such as But let's download the official one: ```bash -wget https://raw.githubusercontent.com/HEP-FCC/FCC-config/winter2023/FCCee/Delphes/card_IDEA.tcl +wget https://raw.githubusercontent.com/HEP-FCC/FCC-config/main/FCCee/Delphes/card_IDEA.tcl ``` To check the arguments ordering, please run the executable: @@ -107,7 +105,7 @@ Before running we need to define the collections that we want to write. The firs We also download the official version of this file: ```bash -wget https://raw.githubusercontent.com/HEP-FCC/FCC-config/winter2023/FCCee/Delphes/edm4hep_IDEA.tcl +wget https://raw.githubusercontent.com/HEP-FCC/FCC-config/main/FCCee/Delphes/edm4hep_IDEA.tcl ``` The following commands will run Pythia8 and Delphes and produce the relevant signal and background samples: @@ -137,7 +135,7 @@ angular correlations and form-factor models. **EvtGen** is interfaced to through **k4Gen**, so that events generated by **Pythia** can be decayed by **EvtGen** before detector simulation. -We will generate a Monte Carlo sample of 1'000 events, matching the `winter2023` MC campaign, for $e^{+} e^{-} \;\rightarrow\; Z \;\rightarrow\; b\bar{b} \;\rightarrow\; B^{+} \;\rightarrow\; \tau^{+} \nu_{\tau} \;\rightarrow\; 3\pi$. All standard configuration files for FCC-ee Monte Carlo campaigns are provided in the [FCC-config repository (winter2023 branch)](https://github.com/HEP-FCC/FCC-config/tree/winter2023). +We will generate a Monte Carlo sample of 1'000 events for $e^{+} e^{-} \;\rightarrow\; Z \;\rightarrow\; b\bar{b} \;\rightarrow\; B^{+} \;\rightarrow\; \tau^{+} \nu_{\tau} \;\rightarrow\; 3\pi$. All standard configuration files for FCC-ee Monte Carlo campaigns are provided in the [FCC-config repository](https://github.com/HEP-FCC/FCC-config); each production campaign has its own branch, and the `main` branch is used here. Open a new lxplus session. Create a working directory and enter it: ```bash @@ -145,10 +143,10 @@ mkdir tutorialGen cd tutorialGen ``` -Since the EDM4hep output card that maps Delphes collections into EDM4hep data structures depends on the software stack, we must use the `winter2023` MC campaign environment: +Make sure you have the latest Key4hep release set up: ```bash -source /cvmfs/sw.hsf.org/spackages6/key4hep-stack/2022-12-23/x86_64-centos7-gcc11.2.0-opt/ll3gi/setup.sh +source /cvmfs/sw.hsf.org/key4hep/setup.sh ``` **Event generation** @@ -159,10 +157,11 @@ correctly set up by running: ```bash which DelphesPythia8EvtGen_EDM4HEP_k4Interface ``` -For our stack output should be: +with a response similar to: ``` -/cvmfs/sw.hsf.org/spackages6/k4simdelphes/00-03-00/x86_64-centos7-gcc11.2.0-opt/pqqvt/bin/DelphesPythia8EvtGen_EDM4HEP_k4Interface +/cvmfs/sw.hsf.org/key4hep/releases/2026-04-08/x86_64-almalinux9-gcc14.2.0-opt/k4simdelphes/00-07-06-36x4ef/bin/DelphesPythia8EvtGen_EDM4HEP_k4Interface ``` +(the output might differ, but shouldn't be empty and the structure should be similar). The executable wrapper that connects Pythia8, EvtGen, and Delphes, and writes output in EDM4hep format. You can inspect its expected argument order by @@ -195,7 +194,7 @@ To start the sample generation, we need to download the configuration files. We begin with the Pythia8 card that defines the hard process $e^{+} e^{-} \;\rightarrow\; Z \;\rightarrow\; b\bar{b}$ and enables the EvtGen interface for hadronic decays. ```bash -wget https://raw.githubusercontent.com/HEP-FCC/FCC-config/winter2023/FCCee/Generator/Pythia8/p8_ee_Zbb_ecm91_EVTGEN.cmd +wget https://raw.githubusercontent.com/HEP-FCC/FCC-config/main/FCCee/Generator/Pythia8/p8_ee_Zbb_ecm91_EvtGen_Bu2TauNuTAUHADNU.cmd ``` To limit the number of events for a local test, add: @@ -207,23 +206,23 @@ Main:numberOfEvents = 1000 Next, we download the Delphes detector description and the EDM4hep steering file, which together define the IDEA detector geometry and how Delphes collections (tracks, jets, leptons, etc.) are translated into EDM4hep structures: ```bash -wget https://raw.githubusercontent.com/HEP-FCC/FCC-config/winter2023/FCCee/Delphes/card_IDEA.tcl -wget https://raw.githubusercontent.com/HEP-FCC/FCC-config/winter2023/FCCee/Delphes/edm4hep_IDEA.tcl +wget https://raw.githubusercontent.com/HEP-FCC/FCC-config/main/FCCee/Delphes/card_IDEA.tcl +wget https://raw.githubusercontent.com/HEP-FCC/FCC-config/main/FCCee/Delphes/edm4hep_IDEA.tcl ``` EvtGen requires a set of text files containing decay tables, particle properties, and our custom decay definition for $B^{+} \;\rightarrow\; \tau^{+} \nu_{\tau} \;\rightarrow\; 3\pi$ channel with a hadronic 3-prong tau decay $\tau^{+} \;\rightarrow\; \pi^{+}\,\pi^{-}\,\pi^{+}\,\bar{\nu}_{\tau}$: ```bash -wget https://raw.githubusercontent.com/HEP-FCC/FCC-config/winter2023/FCCee/Generator/EvtGen/DECAY.DEC -wget https://raw.githubusercontent.com/HEP-FCC/FCC-config/winter2023/FCCee/Generator/EvtGen/evt.pdl -wget https://raw.githubusercontent.com/HEP-FCC/FCC-config/winter2023/FCCee/Generator/EvtGen/Bu2TauNuTAUHADNU.dec +wget https://raw.githubusercontent.com/HEP-FCC/FCC-config/main/FCCee/Generator/EvtGen/DECAY.DEC +wget https://raw.githubusercontent.com/HEP-FCC/FCC-config/main/FCCee/Generator/EvtGen/evt.pdl +wget https://raw.githubusercontent.com/HEP-FCC/FCC-config/main/FCCee/Generator/EvtGen/Bu2TauNuTAUHADNU.dec ``` With all configuration files in place, we can now run the generation step using: ``` DelphesPythia8EvtGen_EDM4HEP_k4Interface card_IDEA.tcl edm4hep_IDEA.tcl \ -p8_ee_Zbb_ecm91_EVTGEN.cmd Bu2TauNuTAUHADNU.root DECAY.DEC evt.pdl \ +p8_ee_Zbb_ecm91_EvtGen_Bu2TauNuTAUHADNU.cmd Bu2TauNuTAUHADNU.root DECAY.DEC evt.pdl \ Bu2TauNuTAUHADNU.dec 521 Bu_SIGNAL 1 ```