Skip to content

Commit

Permalink
add back reduced panda-x
Browse files Browse the repository at this point in the history
  • Loading branch information
lobis committed Sep 21, 2023
1 parent bcef130 commit 918475e
Show file tree
Hide file tree
Showing 3 changed files with 122 additions and 0 deletions.
31 changes: 31 additions & 0 deletions .github/workflows/validation.yml
Original file line number Diff line number Diff line change
Expand Up @@ -192,6 +192,37 @@ jobs:
restRoot -b -q GenerateReadouts.C'("basic.root")'
restRoot -b -q BasicValidation.C'("basic.root", "pixelDecoding")'
pandax-iii:
name: "PandaX-III"
runs-on: ubuntu-latest
container:
image: ghcr.io/lobis/root-geant4-garfield:rest-for-physics
needs: [ framework-install ]
steps:
- uses: actions/checkout@v3
with:
repository: rest-for-physics/framework
path: framework
- name: Checkout framework branch
run: |
cd framework
./scripts/checkoutRemoteBranch.sh ${{ env.BRANCH_NAME }}
- name: Restore cache
uses: actions/cache@v3
id: framework-install-cache
with:
key: ${{ env.BRANCH_NAME }}-${{ github.sha }}
path: ${{ env.REST_PATH }}
- name: PandaXIII Geant4
run: |
source ${{ env.REST_PATH }}/thisREST.sh
restG4 ${{ env.REST_PATH }}/examples/restG4/05.PandaXIII/Xe136bb0n.rml -o Xe136bb0n.root
- name: PandaXIII Data
run: |
source ${{ env.REST_PATH }}/thisREST.sh
cd framework/pipeline/panda-x
restManager --c P3AutoChain.rml --i CoBo_AsAd0_2019-03-15.graw --o testOutput.root --j 1
trex-dm:
name: "TREX-DM"
runs-on: ubuntu-latest
Expand Down
Binary file added pipeline/panda-x/CoBo_AsAd0_2019-03-15.graw
Binary file not shown.
91 changes: 91 additions & 0 deletions pipeline/panda-x/P3AutoChain.rml
Original file line number Diff line number Diff line change
@@ -0,0 +1,91 @@
<?xml version="1.0" encoding="UTF-8" standalone="no" ?>

<!--In this example, when launching the analysis, we are doing following operations inside TRestManager:
1. Initialize TRestRun
1.1 set input and output file for TRestRun(here input and output is in "globals")
1.2 addMetadata to TRestRun
2. Initialize TRestProcessRunner
2.1 set number of events to process
2.2 set thread number
2.3 set output tree branches
2.4 add multiple processes
2.4.1 override some parameters in the process
2.4.1 add additional observables in the process
3. Add a task to call TRestProcessRunner to run
-->

<TRestManager name="CoBoDataAnalysis" title="Example" verboseLevel="info">

<TRestRun name="SJTU_Proto">
<parameter name="runNumber" value="auto"/>//change this value to "auto" to enable database
<parameter name="inputFileName" value="auto"/>
</TRestRun>

<TRestProcessRunner name="Processor" verboseLevel="info">
<parameter name="eventsToProcess" value="0"/>
<parameter name="threadNumber" value="2"/>

<parameter name="inputAnalysisStorage" value="on"/>
<parameter name="inputEventStorage" value="off"/>
<parameter name="outputEventStorage" value="on"/>

<addProcess type="TRestRawMultiCoBoAsAdToSignalProcess" name="virtualDAQ" value="ON"/>
<addProcess type="TRestRawSignalAnalysisProcess" name="sAna" value="ON">
<parameter name="pointsOverThreshold" value="3"/>
/// We define all observables except MinValue because it is not yet in validation chain
<observable name="BaseLineMean" value="ON"/>
<observable name="BaseLineSigmaMean" value="ON"/>
<observable name="TimeBinsLength" value="ON"/>
<observable name="FullIntegral" value="ON"/>
<observable name="ThresholdIntegral" value="ON"/>
<observable name="RiseSlopeAvg" value="ON"/>
<observable name="SlopeIntegral" value="ON"/>
<observable name="RateOfChangeAvg" value="ON"/>
<observable name="RiseTimeAvg" value="ON"/>
<observable name="TripleMaxIntegral" value="ON"/>
<observable name="IntegralBalance" value="ON"/>
<observable name="AmplitudeIntegralRatio" value="ON"/>
<observable name="MinPeakAmplitude" value="ON"/>
<observable name="MaxPeakAmplitude" value="ON"/>
<observable name="PeakAmplitudeIntegral" value="ON"/>
<observable name="AmplitudeRatio" value="ON"/>
<observable name="MaxPeakTime" value="ON"/>
<observable name="MinPeakTime" value="ON"/>
<observable name="MaxPeakTimeDelay" value="ON"/>
<observable name="AveragePeakTime" value="ON"/>

</addProcess>
<addProcess type="TRestEventRateAnalysisProcess" name="rateAna" value="ON" observable="all"/>
<addProcess type="TRestRawToDetectorSignalProcess" name="rawSignalToSignal" value="ON">
<parameter name="sampling" value="0.2us"/>
<parameter name="zeroSuppression" value="true"/>
<parameter name="nPointsOverThreshold" value="3"/>
</addProcess>

<addProcess type="TRestRealTimeDrawingProcess" name="rD" value="ON" drawInterval="1000">
<TRestAnalysisPlot name="TriggerRatePlot" previewPlot="false">
<canvas size="(1000,800)" save="TriggerRate.png"/>
<plot name="TriggerRate" title="Trigger Rate" xlabel="Seconds From Start" ylabel="Counts" value="ON"
stats="ON">
<variable name="rateAna_SecondsFromStart" range="auto" nbins="100"/>
</plot>
</TRestAnalysisPlot>
</addProcess>


</TRestProcessRunner>

<addTask type="processEvents" value="ON"/>


<globals>
<searchPath value="$ENV{REST_INPUTDATA}/definitions/"/>
<parameter name="mainDataPath" value=""/>

<parameter name="pointThreshold" value="3"/>
</globals>

</TRestManager>


<!--parameter here is accessible to all the classes-->

0 comments on commit 918475e

Please sign in to comment.