Skip to content
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

Develop/waveform_simulator #4

Open
wants to merge 63 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
63 commits
Select commit Hold shift + click to select a range
ee9a4d1
Merge pull request #2 from WCTE/develop/wcte
kmtsui May 23, 2023
b28fbbf
Save waveform from custom adc
kmtsui May 26, 2023
4735acf
Merge pull request #3 from WCTE/master
kmtsui May 26, 2023
d5d5822
Do pulse fitting
kmtsui Jun 1, 2023
6f73539
Merge branch 'develop/waveform' of https://github.com/kmtsui/MDT into…
kmtsui Jun 1, 2023
10d6d6a
Add HYBRIDWCSIM compatibility
kmtsui Jun 1, 2023
0fc2a73
Setup parameter inputs
kmtsui Jun 1, 2023
161e8df
Save more true info
kmtsui Jun 6, 2023
559e9b4
Add flag to save waveform
kmtsui Jun 19, 2023
6ed8d57
Debug save true TQ
kmtsui Jun 19, 2023
e576945
Make digitizer be dependent on PMT type
kmtsui Jun 20, 2023
2ab4535
Use switch conditional for digitizer choice
kmtsui Jun 20, 2023
a457d5e
Add voltage resolution parameter
kmtsui Jul 7, 2023
5222160
Correct default value
kmtsui Jul 7, 2023
bc9aa9b
Interface to WCSim v1.11.0
kmtsui Aug 3, 2023
d01e76f
Add OD support
kmtsui Aug 3, 2023
bf5af53
Avoid double-registering PMT type in MDTManager
kmtsui Aug 3, 2023
b55e388
Get noise NPMTs at runtime
kmtsui Aug 4, 2023
3f91ec1
Coincide TriggerType with WCSimEnumerations
kmtsui Aug 4, 2023
b13e321
Add IWCD app
kmtsui Aug 4, 2023
091ae83
Debug find trigger loop
kmtsui Aug 4, 2023
50acd11
Add NoTrigger algorithm
kmtsui Aug 7, 2023
d8225c5
Seperate triggers for different PMT types
kmtsui Aug 7, 2023
dd23cb1
Remove obsolete HYBRIDWCSIM flag
kmtsui Aug 7, 2023
211d797
Debug find trigger end time
kmtsui Aug 15, 2023
521030a
Compatibility with new boundary points info
kmtsui Aug 15, 2023
03d4886
Copy other trees into output
kmtsui Aug 15, 2023
c088afb
Add initial CI
guiguem Aug 21, 2023
0263d74
Committing clang-format changes
Aug 21, 2023
ac09770
Use master branch (not main)
guiguem Aug 21, 2023
2b56d81
Merge remote-tracking branch 'origin/master'
guiguem Aug 21, 2023
f8953dc
Revert "Committing clang-format changes"
guiguem Aug 21, 2023
012fbd7
Remove clang format
guiguem Aug 21, 2023
71ea87a
Typo in dockerfile
guiguem Aug 21, 2023
c106270
Add WCSim lib in main CMakeLists.txt
guiguem Aug 21, 2023
b9ca82e
Merge branch 'master' into develop/WCSim_v11.0
guiguem Aug 22, 2023
05d5fd0
Add IWCD app
guiguem Aug 22, 2023
0d2b17b
Merge pull request #2 from kmtsui/develop/WCSim_v11.0
guiguem Aug 22, 2023
698fed8
Add Doxygen file via upload
guiguem Sep 4, 2023
daf5925
Merge pull request #3 from hyperk/feature/doxygen
guiguem Sep 4, 2023
5ea880e
Make photon raw hit time a double instead of float
kmtsui Nov 7, 2023
622553b
Save mPMT id in HitTube class
kmtsui Nov 7, 2023
23ab57c
Properly set pile up time, save raw Cherenkov hits
kmtsui Nov 7, 2023
556b8bf
Pile up data classes compatibility
kmtsui Nov 8, 2023
9e07111
Remove delicate GetFileIdNumber usage
kmtsui Nov 8, 2023
6793001
Make appGenPileUpSpill compatible
kmtsui Nov 8, 2023
a271be5
Enable appGenPileUpSpill in compilation
kmtsui Nov 8, 2023
f550f5f
Add example input files for appGenPileUpSpill
kmtsui Nov 8, 2023
5f8c831
Add usage of appGenPileUpSpill
kmtsui Nov 8, 2023
7847322
Forgot to ReInitialize OD hit container
kmtsui Nov 9, 2023
eecdf7e
New trigger setup for pile-up events
kmtsui Nov 9, 2023
ad2e5dc
Update README
kmtsui Nov 9, 2023
e5231a1
Merge remote-tracking branch 'kmtsui/MDT/feature/PileUpApp' into MDT/…
kmtsui Nov 20, 2023
5cb4193
Add OD waveform tree
kmtsui Nov 22, 2023
ea063bc
Optimize waveform tree setup, write speed
kmtsui Nov 24, 2023
432a9e3
Copy metadata trees
kmtsui Nov 27, 2023
bc51c9a
Add PMT by PMT detection efficiency
kmtsui Nov 27, 2023
499cbd3
Add PMT by PMT timing change
kmtsui Nov 28, 2023
1577918
Tweak fLoad usage
kmtsui Nov 28, 2023
9d484d6
Add individual PMT timing into digitizer
kmtsui Nov 28, 2023
77c61ba
Add timing template and tweak usage
kmtsui Nov 28, 2023
90cac65
Add IWCD OD PMT response
kmtsui Nov 28, 2023
e85d056
Update README.md
kmtsui Dec 11, 2023
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
40 changes: 40 additions & 0 deletions .github/workflows/Doxygen.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
# This is a basic workflow to help you get started with Actions

name: Doxygen

# Controls when the workflow will run
on:
# Triggers the workflow on push or pull request events but only for the main branch
push:
branches: [ main, master ]

# Allows you to run this workflow manually from the Actions tab
workflow_dispatch:

# A workflow run is made up of one or more jobs that can run sequentially or in parallel
jobs:
# This workflow contains a single job called "build"

Doxygen:
# The type of runner that the job will run on
runs-on: ubuntu-latest

# Steps represent a sequence of tasks that will be executed as part of the job
steps:
# Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it
- uses: actions/checkout@v2

- name: Make docs folder
run: mkdir docs-output

# Runs a single command using the runners shell
- name: Doxygen Action
uses: mattnotmitt/[email protected]


- name: Deploy
uses: peaceiris/actions-gh-pages@v3
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
publish_dir: ./docs-output

55 changes: 55 additions & 0 deletions .github/workflows/pullrequest_workflow.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,55 @@
name: Build on push

on: [pull_request]




env:
REGISTRY: ghcr.io
IMAGE_NAME: ${{ github.repository }}

jobs:

build:

runs-on: ubuntu-latest
permissions:
contents: read
packages: read

steps:
- name: Checkout repository
uses: actions/checkout@v3
- uses: webfactory/[email protected]
with:
ssh-private-key: ${{ secrets.SSH_PRIVATE_KEY }}

- name: Log in to the Container registry
uses: docker/login-action@v2
with:
registry: ${{ env.REGISTRY }}
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}

- name: Extract metadata (tags, labels) for Docker
id: meta
uses: docker/metadata-action@98669ae865ea3cffbcbaa878cf57c20bbf1c6c38
with:
images: ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}

- name: Build and push Docker image
uses: docker/[email protected]
with:
context: .
file: Dockerfile
push: false
pull: true
github-token: ${{ secrets.GITHUB_TOKEN }}
tags: ${{ steps.meta.outputs.tags }}
labels: ${{ steps.meta.outputs.labels }}
ssh: |
default=${{ env.SSH_AUTH_SOCK }}

# - name: Build the Docker image
# run: docker build . --file Dockerfile --tag ghcr.io/hyperk/geant4:latest
53 changes: 53 additions & 0 deletions .github/workflows/push_workflow.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,53 @@
name: Build on push

on:
push:
branches: [main, master]
tags: ['*']

env:
REGISTRY: ghcr.io
IMAGE_NAME: ${{ github.repository }}

jobs:


build:

runs-on: ubuntu-latest
permissions:
contents: read
packages: write

steps:
- name: Checkout repository
uses: actions/checkout@v3
- uses: webfactory/[email protected]
with:
ssh-private-key: ${{ secrets.SSH_PRIVATE_KEY }}

- name: Log in to the Container registry
uses: docker/login-action@v2
with:
registry: ${{ env.REGISTRY }}
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}

- name: Extract metadata (tags, labels) for Docker
id: meta
uses: docker/metadata-action@98669ae865ea3cffbcbaa878cf57c20bbf1c6c38
with:
images: ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}

- name: Build and push Docker image
uses: docker/[email protected]
with:
context: .
file: Dockerfile
push: true
pull: true
github-token: ${{ secrets.GITHUB_TOKEN }}
tags: ${{ steps.meta.outputs.tags }}
labels: ${{ steps.meta.outputs.labels }}
ssh: |
default=${{ env.SSH_AUTH_SOCK }}
12 changes: 10 additions & 2 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,14 @@

# binary
appWCTESingleEvent
appIWCDSingleEvent
appGenPileUpSpill

# root file
*.root
# output files
*.root
*.pdf


.idea
build-*
install-*
30 changes: 30 additions & 0 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
# Minimum cmake verison 3.1 required for the variable CMAKE_CXX_STANDARD
cmake_minimum_required(VERSION 3.1)


set(PROJECT_NAME MDT)

list(APPEND CMAKE_MODULE_PATH
$ENV{HK_PILOT_DIR}/cmake
)
include(GetVersionGit)
MESSAGE("Preparing project ${PROJECT_NAME} version ${PROJECT_VERSION}" )
project(${PROJECT_NAME} VERSION ${PROJECT_VERSION})
include(HKPackageBuilder)
hkbuilder_prepare_project()
set( PUBLIC_EXT_LIBS )
hk_check_dependencies()

# manually include WCSim libraries
list( APPEND PUBLIC_EXT_LIBS
WCSim::WCSimRoot
WCSim::WCSimCore
)

include_directories(BEFORE
${PROJECT_SOURCE_DIR}/cpp/include
${PROJECT_SOURCE_DIR}/app/utilities/include

)
add_subdirectory(cpp)
add_subdirectory(app)
9 changes: 9 additions & 0 deletions Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
FROM ghcr.io/hyperk/hk-meta-externals:latest

COPY . /usr/local/hk/MDT

RUN --mount=type=ssh mkdir -p -m 0600 ~/.ssh && ssh-keyscan github.com >> ~/.ssh/known_hosts

WORKDIR /usr/local/hk
RUN --mount=type=ssh . /usr/local/hk/hk-pilot/setup.sh &&\
hkp install MDT
Loading