Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
108 commits
Select commit Hold shift + click to select a range
24d20b8
Got it to compile with core 1.5.0.
hank-hua May 7, 2025
8d091b6
Renamed SampleName->SampleTitle, DetID->SampleName in config files.
hank-hua May 8, 2025
8601633
Attempted to update TestEventeRates for CI.
hank-hua May 8, 2025
4ae3a3d
Fixing error in AtmSample_nueselec.yaml.
hank-hua May 8, 2025
658f9f3
Realised that GetName() should be changed to GetTitle() rather than G…
hank-hua May 8, 2025
cd46b78
SampleName -> SampleNames in cov configs; updated ND sample names to …
hank-hua May 8, 2025
ba0732a
Don't throw XSec parameters for stats only and set fake data to Asmio…
BenJarg May 8, 2025
1549f24
Added det sys and xsec cov files.
hank-hua May 9, 2025
ca433db
Add mkdir in link_files.sh and changed sigmavariation.cpp to use parf…
hank-hua May 11, 2025
aa2fdd7
Fixed Modes in Xsec_ND+FD.yaml; Changed ND samples files to use GENIE…
hank-hua May 13, 2025
41404cf
Adding FD shift systs
May 14, 2025
610a134
New FD sample names
May 14, 2025
d02e7ee
FD det systs yaml
May 14, 2025
6ac8eef
Change sample names in osc yaml
May 14, 2025
c51d729
Fix broken link file script
May 14, 2025
97db7cc
Fix broken kinematic pointer functions
May 14, 2025
49f3b92
New FD shift syst yaml
May 14, 2025
04ebcd7
merge core1.5.0
May 14, 2025
214c046
Merge pull request #69 from DUNE/liban/feature/MergeShiftSysts
hank-hua May 14, 2025
b1f4c70
Update CMakeLists.txt
KSkwarczynski May 14, 2025
ced0d9c
Add updated FD shift systs with origninal step sizes, remove old version
May 14, 2025
c8c81b3
Remove old shift syst implementation
May 14, 2025
5a513ac
Changed name of syst group
May 14, 2025
7fb6630
Add cov yamls separately
May 14, 2025
d992760
Cleaned up more old shift systs implementation.
hank-hua May 14, 2025
71db4ef
Merge pull request #68 from DUNE/BenJarg/bugfix/systonly_xsec_through…
dbarrow257 May 14, 2025
2d2ae5a
Merge branch 'develop' into patch-1
dbarrow257 May 14, 2025
4f47d63
FD -> FD_*.
hank-hua May 14, 2025
1be5582
Make linter happy.
hank-hua May 14, 2025
4535b11
Merge branch 'develop' into hhua/feature/core1.5.0
hank-hua May 14, 2025
57725d7
Merge pull request #70 from KSkwarczynski/patch-1
dbarrow257 May 14, 2025
cb1d84e
Merge branch 'develop' into hhua/feature/core1.5.0
dbarrow257 May 14, 2025
b66a0a8
Make linter happy.
hank-hua May 14, 2025
6f1ca00
Change sample names in atmos osc cov
May 15, 2025
a15fa6d
add override to register func params functions
May 15, 2025
9b3b0a0
remove old xsec yaml
May 15, 2025
90ed7d9
override typo
May 15, 2025
43df06c
Merge pull request #67 from DUNE/hhua/feature/core1.5.0
dbarrow257 May 15, 2025
258c36d
Compiling commit of MaCh3 DUNE against Corev2.0
dbarrow257 May 16, 2025
e52ff33
Compiling with NDGar (after including the v1.5.0 changes to that clas…
dbarrow257 May 16, 2025
8d8b69b
Address directory changes in CI check workflows
dbarrow257 May 16, 2025
2350497
Correcting how cosZ is read from the CAFs
M-Ismerio May 27, 2025
c4f277b
Merge pull request #72 from DUNE/ismerio/patch/CAF_Coord
dbarrow257 May 28, 2025
75ad619
Merge remote-tracking branch 'origin/develop' into dbarrow257/feature…
dbarrow257 May 29, 2025
5c68c19
Merge pull request #71 from DUNE/dbarrow257/feature/Corev2.0
dbarrow257 May 30, 2025
a4c2431
Update atmospheric step sizes
BenJarg Jun 5, 2025
3343742
Merge pull request #73 from DUNE/BenJarg/atm_step_size_update
dbarrow257 Jun 5, 2025
42668e9
Rename to match other repos
Jun 6, 2025
7fbd350
remove deprecated tests
Jun 6, 2025
e3a9e69
Update cmake
Jun 6, 2025
a1e5751
Add frankenstein CAF generated by randomly sampling from all DUNE cafs
Jun 6, 2025
e6890ba
remove event rates output
Jun 6, 2025
e48e8c8
Remove CMakeLists in CI
Jun 7, 2025
a9b3414
Fix CI input
Jun 7, 2025
2a84d48
Add sample output, readme
Jun 7, 2025
3e8a6a1
Add github action, remove monitor/manager from the output for consist…
Jun 7, 2025
534221a
Remove rocky9 for now as it's not used
Jun 7, 2025
93664a4
fix docker files, build correct branch, uopdate top level cmakelists …
Jun 7, 2025
bcc0209
point to correct files, no need to source nuoscillator setup
Jun 7, 2025
6968c9b
forgot to revert name
Jun 7, 2025
62529e8
fix pathing
Jun 7, 2025
43af4d1
Add all osc channels
Jun 7, 2025
ee4db4d
more pathing fixes
Jun 7, 2025
b8c67f9
more pathing fixes, add concatentation script
Jun 7, 2025
9d590f2
everything runs in the container
Jun 7, 2025
06ab5db
check for failures more verbosely
Jun 7, 2025
b9f340f
clean up
Jun 7, 2025
bc15dd9
clean up for merge
Jun 7, 2025
1d003a0
docs update
Jun 7, 2025
05f344c
doc->Docs
Jun 7, 2025
95eef1f
make linter happy
Jun 7, 2025
7979912
Final linter appease
Jun 7, 2025
9172859
mor folder rename
Jun 7, 2025
6fe3c0b
workflow updates
Jun 7, 2025
6a0a62c
More path changes to match develop
Jun 8, 2025
d2a74ff
Fix more paths, install diff correctly
Jun 8, 2025
1e0181b
diff->diffuitls
Jun 8, 2025
4722db7
correctly install diff
Jun 8, 2025
003f849
final check to see if this finds differences
Jun 8, 2025
488b7b3
now runs on main, develop, remove debug
Jun 8, 2025
beda692
Run workflow on main, revert debug, fix diff
Jun 9, 2025
8bab3ee
copied wrong thing from test script
Jun 9, 2025
251048c
debug
Jun 9, 2025
9dce013
neaten configs
Jun 9, 2025
8d34430
randomly failing again, remove piping filter
Jun 9, 2025
046a46c
just pushing to remote, cedar too slow
Jun 9, 2025
b750bf5
fix
Jun 9, 2025
108883e
linter
Jun 11, 2025
9847834
Merge pull request #75 from DUNE/hwallace/patch/event_rate_ci
dbarrow257 Jun 12, 2025
3a677b0
Adds splines
Jun 13, 2025
f4aa39e
add spline file
Jun 13, 2025
c7a701a
Added checks to make sure energies are not negative to match event ra…
hank-hua Jun 13, 2025
5b9a35b
Add default beam/atm oscillation options to MaCh3Core CPM options, us…
dbarrow257 Jun 23, 2025
8889ccd
Cleanup configs, add exposure scaling to atmospheric samples - defaul…
dbarrow257 Jun 23, 2025
8a71dac
Merge pull request #79 from DUNE/dbarrow257/feature/CMakeStreamline
dbarrow257 Jun 23, 2025
2649519
Merge branch 'develop' into dbarrow257/feature/AtmosphericExposure
dbarrow257 Jun 23, 2025
5dee614
Merge pull request #80 from DUNE/dbarrow257/feature/AtmosphericExposure
BenJarg Jun 23, 2025
73c6acf
Merge branch 'develop' into hwallace/feature/splines_in_ci
henry-wallace-phys Jul 7, 2025
4b17e03
Merge branch 'develop' into hhua/patch/detsysts_fix
dbarrow257 Jul 21, 2025
69df930
Merge pull request #76 from DUNE/hwallace/feature/splines_in_ci
dbarrow257 Jul 21, 2025
a5a8961
Merge branch 'develop' into hhua/patch/detsysts_fix
dbarrow257 Jul 21, 2025
ebab9c8
Added warning for negative energies.
hank-hua Aug 1, 2025
6ee8971
Merge pull request #77 from DUNE/hhua/patch/detsysts_fix
dbarrow257 Aug 1, 2025
8a4f08c
Update README.md
KSkwarczynski Aug 6, 2025
7a644f7
Update README.md
EdAtkin Aug 8, 2025
2b23a0d
Merge pull request #82 from KSkwarczynski/patch-2
dbarrow257 Aug 8, 2025
e47b67e
Merge pull request #83 from DUNE/EdAtkin-patch-1
dbarrow257 Aug 8, 2025
62c32fd
Fix merge conflict with main
dbarrow257 Nov 18, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions .github/workflows/CDImage.yml
Original file line number Diff line number Diff line change
Expand Up @@ -22,10 +22,10 @@ jobs:
matrix:
include:
- os: alma9
file: doc/MaCh3DockerFiles/Alma9/Dockerfile
file: Docs/MaCh3DockerFiles/Alma9/Dockerfile
tag_latest: alma9latest
- os: Ubuntu22.04
file: doc/MaCh3DockerFiles/Ubuntu22.04/Dockerfile
file: Docs/MaCh3DockerFiles/Ubuntu22.04/Dockerfile
tag_latest: ubuntulatest

name: Image CD ${{ matrix.os }}
Expand Down
7 changes: 3 additions & 4 deletions .github/workflows/CIBuild.yml
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
---
# Check if MaCh3 compiles correctly

name: Build CI
name: Build CD

# The events that trigger the workflow
on:
Expand All @@ -20,10 +19,10 @@ jobs:
matrix:
include:
- os: Alma9
file: doc/MaCh3DockerFiles/Alma9/Dockerfile
file: Docs/MaCh3DockerFiles/Alma9/Dockerfile
tag: alma9latest
- os: Ubuntu22.04
file: doc/MaCh3DockerFiles/Ubuntu22.04/Dockerfile
file: Docs/MaCh3DockerFiles/Ubuntu22.04/Dockerfile
tag: ubuntulatest

name: Build CI ${{ matrix.os }}
Expand Down
71 changes: 71 additions & 0 deletions .github/workflows/CIValidations.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,71 @@
---
name: Event Rates Beam

# To add additional run-time tests add (to matrix)
# - name: <your test>
# test_exe: /test/<your exe>
# test_config: path/to/tconfiguration
# repo_linking_command: ln -sf /path/to/files/ (usually CAFs + splines)

on:
pull_request:
branches: [develop, main]

permissions:
contents: read
packages: write

jobs:
build:
runs-on: ubuntu-latest
strategy:
fail-fast: true
matrix:
include:
- name: Beam Event Rate Validation
test_exe: EventRates
build_arg: -DCUDAProb3Linear_ENABLED=ON
test_config: CIValidations/CIInputs/CIFitConfig.yaml
old_output: CIValidations/CIOutputs/BeamEventRates.txt
new_output: CIValidations/CIOutputs/BeamEventRates_New.txt


name: Run Test ${{matrix.name}}
steps:
# Checkout the repository code
- uses: actions/checkout@v4
- name: Log in to GitHub Container Registry
run: echo "${{ secrets.GITHUB_TOKEN }}" | docker login ghcr.io -u ${{ github.actor }} --password-stdin

- name: Start docker container
env:
MACH3_DUNE_VERSION: ${{ github.event.pull_request.head.ref || github.ref_name }}
run: |
docker build . \
--file Docs/MaCh3DockerFiles/Alma9/Dockerfile \
--tag ghcr.io/dune/mach3:alma9_ci \
--build-arg MACH3_DUNE_VERSION="${MACH3_DUNE_VERSION}" \
--build-arg CMAKE_OPTIONS=${{matrix.build_arg}}

# Run event rates
- name: Run Event Rates
uses: addnab/docker-run-action@v3
with:
image: ghcr.io/dune/mach3:alma9_ci
shell: bash
run: |
dnf install -y diffutils
cd ..
source ./build/bin/setup.MaCh3.sh
source ./build/bin/setup.MaCh3DUNE.sh
echo Running ./build/bin/${{matrix.test_exe}} ${{matrix.test_config}} 2>&1 | grep '^\['"${{matrix.test_exe}}"'\.cpp\]' | tee ${{matrix.new_output}}
./build/bin/${{matrix.test_exe}} ${{matrix.test_config}} | grep '^\['"${{matrix.test_exe}}"'\.cpp\]' | tee ${{matrix.new_output}}
diff ${{matrix.old_output}} ${{matrix.new_output}} > diff_output.txt
DIFF_EXIT=$?
cat diff_output.txt
if [ $DIFF_EXIT -gt 0 ]; then
echo "Differences found:"
exit 1
else
echo "Workflow run successfully, no differences found!"
fi
4 changes: 2 additions & 2 deletions .github/workflows/Doxygen.yml
Original file line number Diff line number Diff line change
Expand Up @@ -45,12 +45,12 @@ jobs:
- name: Doxygen Action
uses: mattnotmitt/doxygen-action@v1.12.0
with:
doxyfile-path: './doc/Doxyfile'
doxyfile-path: './Docs/Doxyfile'
working-directory: .

# Deploys the generated documentation to GitHub Pages
- name: Deploy
uses: peaceiris/actions-gh-pages@v4
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
publish_dir: ./doc/html
publish_dir: ./Docs/html
69 changes: 0 additions & 69 deletions .github/workflows/EventRates.yml

This file was deleted.

2 changes: 1 addition & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,6 @@ logs/
jupyter_env
.history
Doc
inputs/Atmospherics/CAFs
Inputs/Atmospherics/CAFs
nohup.out
output*.txt
2 changes: 1 addition & 1 deletion Apps/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ foreach(app
)

add_executable(${app} ${app}.cpp)
target_link_libraries(${app} MaCh3DUNE::All Minuit)
target_link_libraries(${app} SamplesDUNE MaCh3DUNE::All Minuit)

add_dependencies(MaCh3DUNEApps ${app})

Expand Down
60 changes: 30 additions & 30 deletions Apps/EventRates.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -12,8 +12,8 @@
#include <TColor.h>
#include <TMath.h>

#include "samplePDFDUNE/MaCh3DUNEFactory.h"
#include "samplePDFDUNE/StructsDUNE.h"
#include "Samples/MaCh3DUNEFactory.h"
#include "Samples/StructsDUNE.h"

void Write1DHistogramsToFile(std::string OutFileName, std::vector<TH1*> Histograms) {
auto OutputFile = std::unique_ptr<TFile>(TFile::Open(OutFileName.c_str(), "RECREATE"));
Expand Down Expand Up @@ -44,27 +44,27 @@ int main(int argc, char * argv[]) {
auto fitMan = std::unique_ptr<manager>(new manager(argv[1]));

//###############################################################################################################################
//Create samplePDFFD objects
//Create SampleHandlerFD objects

covarianceXsec* xsec = nullptr;
covarianceOsc* osc = nullptr;
ParameterHandlerGeneric* xsec = nullptr;
ParameterHandlerOsc* osc = nullptr;

std::vector<samplePDFFDBase*> DUNEPdfs;
std::vector<SampleHandlerFD*> DUNEPdfs;
MakeMaCh3DuneInstance(fitMan.get(), DUNEPdfs, xsec, osc);

//###############################################################################################################################
//Perform reweight and print total integral

std::vector<TH1*> DUNEHists;
for(auto Sample : DUNEPdfs){
Sample->reweight();
Sample->Reweight();
if (Sample->GetNDim() == 1)
DUNEHists.push_back(Sample->get1DHist());
DUNEHists.push_back(Sample->Get1DHist());
else if (Sample->GetNDim() == 2)
DUNEHists.push_back(Sample->get2DHist());
DUNEHists.push_back(Sample->Get2DHist());

std::string EventRateString = fmt::format("{:.2f}", Sample->get1DHist()->Integral());
MACH3LOG_INFO("Event rate for {} : {:<5}", Sample->GetName(), EventRateString);
std::string EventRateString = fmt::format("{:.2f}", Sample->Get1DHist()->Integral());
MACH3LOG_INFO("Event rate for {} : {:<5}", Sample->GetTitle(), EventRateString);

Sample->PrintIntegral();
}
Expand All @@ -82,22 +82,22 @@ int main(int argc, char * argv[]) {

for(auto Sample : DUNEPdfs) {
MACH3LOG_INFO("======================");
int nOscChannels = Sample->getNMCSamples();
int nOscChannels = Sample->GetNMCSamples();
for (int iOscChan=0;iOscChan<nOscChannels;iOscChan++) {
std::vector< std::vector<double> > SelectionVec;
std::vector< KinematicCut > SelectionVec;

std::vector<double> SelecChannel(3);
SelecChannel[0] = Sample->ReturnKinematicParameterFromString("OscillationChannel");
SelecChannel[1] = iOscChan;
SelecChannel[2] = iOscChan+1;
KinematicCut SelecChannel;
SelecChannel.ParamToCutOnIt = Sample->ReturnKinematicParameterFromString("OscillationChannel");
SelecChannel.LowerBound = iOscChan;
SelecChannel.UpperBound = iOscChan+1;
SelectionVec.push_back(SelecChannel);

TH1* Hist = Sample->get1DVarHist(Sample->GetXBinVarName(),SelectionVec);
MACH3LOG_INFO("{:<20} : {:<20} : {:<20.2f}",Sample->GetName(),Sample->getFlavourName(iOscChan),Hist->Integral());
TH1* Hist = Sample->Get1DVarHist(Sample->GetXBinVarName(),SelectionVec);
MACH3LOG_INFO("{:<20} : {:<20} : {:<20.2f}",Sample->GetTitle(),Sample->GetFlavourName(iOscChan),Hist->Integral());
}

TH1* Hist = Sample->get1DVarHist(Sample->GetXBinVarName());
MACH3LOG_INFO("{:<20} : {:<20.2f}",Sample->GetName(),Hist->Integral());
TH1* Hist = Sample->Get1DVarHist(Sample->GetXBinVarName());
MACH3LOG_INFO("{:<20} : {:<20.2f}",Sample->GetTitle(),Hist->Integral());
}

//###############################################################################################################################
Expand All @@ -113,20 +113,20 @@ int main(int argc, char * argv[]) {
MaCh3Modes* Modes = Sample->GetMaCh3Modes();
int nModeChannels = Modes->GetNModes();
for (int iModeChan=0;iModeChan<nModeChannels;iModeChan++) {
std::vector< std::vector<double> > SelectionVec;
std::vector< KinematicCut > SelectionVec;

std::vector<double> SelecChannel(3);
SelecChannel[0] = Sample->ReturnKinematicParameterFromString("Mode");
SelecChannel[1] = iModeChan;
SelecChannel[2] = iModeChan+1;
KinematicCut SelecChannel;
SelecChannel.ParamToCutOnIt = Sample->ReturnKinematicParameterFromString("Mode");
SelecChannel.LowerBound = iModeChan;
SelecChannel.UpperBound = iModeChan+1;
SelectionVec.push_back(SelecChannel);

TH1* Hist = Sample->get1DVarHist(Sample->GetXBinVarName(),SelectionVec);
MACH3LOG_INFO("{:<20} : {:<20} : {:<20.2f}",Sample->GetName(),Modes->GetMaCh3ModeName(iModeChan),Hist->Integral());
TH1* Hist = Sample->Get1DVarHist(Sample->GetXBinVarName(),SelectionVec);
MACH3LOG_INFO("{:<20} : {:<20} : {:<20.2f}",Sample->GetTitle(),Modes->GetMaCh3ModeName(iModeChan),Hist->Integral());
}

TH1* Hist = Sample->get1DVarHist(Sample->GetXBinVarName());
MACH3LOG_INFO("{:<20} : {:<20.2f}",Sample->GetName(),Hist->Integral());
TH1* Hist = Sample->Get1DVarHist(Sample->GetXBinVarName());
MACH3LOG_INFO("{:<20} : {:<20.2f}",Sample->GetTitle(),Hist->Integral());
}

//###############################################################################################################################
Expand Down
Loading