Skip to content
Snippets Groups Projects
Commit 05a7d214 authored by Mark Jones's avatar Mark Jones Committed by Mark K Jones
Browse files

Update DEF-files and Scripts for simple raster replay

parent cb041b44
No related branches found
No related tags found
No related merge requests found
#*************
# Fast Raster
#*************
# Assume FADC range is set to 1V and the integration is 25 channels
# Offset in the FADC is about 0.122V or 500 channels.
formula FRXA_V H.rb.raster.frxaRawAdc*(1./4096.)/25.
formula FRXB_V H.rb.raster.frxbRawAdc*(1./4096.)/25.
formula FRYA_V H.rb.raster.fryaRawAdc*(1./4096.)/25.
formula FRYB_V H.rb.raster.frybRawAdc*(1./4096.)/25.
TH1F pFRXA 'SHMS FRXA; FRXA RAW ADC (chan); Counts' H.rb.raster.frxaRawAdc 1000 0 100000
TH1F pFRXA_V 'SHMS FRXA; FRXA RAW ADC (Volts); Counts' FRXA_V 1000 0 1.0
TH1F pFRXB 'SHMS FRXB; FRXB RAW ADC (chan); Counts' H.rb.raster.frxbRawAdc 1000 0 100000
TH1F pFRXB_V 'SHMS FRXB; FRXB RAW ADC (Volts); Counts' FRXB_V 1000 0 1.0
TH1F pFRYA 'SHMS FRYA; FRYA RAW ADC (chan); Counts' H.rb.raster.fryaRawAdc 1000 0 100000
TH1F pFRYA_V 'SHMS FRYA; FRYA RAW ADC (Volts); Counts' FRYA_V 1000 0 1.0
TH1F pFRYB 'SHMS FRYB; FRYB RAW ADC (chan); Counts' H.rb.raster.frybRawAdc 1000 0 100000
TH1F pFRYB_V 'SHMS FRYB; FRYB RAW ADC (Volts); Counts' FRYB_V 1000 0 1.0
TH2F pFRA_XvsY 'SHMS FRA X vs Y; FRXA RAW ADC (Volts); FRYA RAW ADC (Volts)' FRXA_V FRYA_V 1000 0 1.0 1000 0 1.0
TH2F pFRB_XvsY 'SHMS FRB X vs Y; FRXB RAW ADC (Volts); FRYB RAW ADC (Volts)' FRXB_V FRYB_V 1000 0 1.0 1000 0 1.0
# See $ANALYZER/examples/output_example.def for examples
#
block T.hms.*
#*************
# Fast Raster
#*************
# Assume FADC range is set to 1V and the integration is 25 channels
# Offset in the FADC is about 0.122V or 500 channels.
formula FRXA_V T.hms.hFRXA_adcPulseIntRaw*(1./4096.)/25.
formula FRXB_V T.hms.hFRXB_adcPulseIntRaw*(1./4096.)/25.
formula FRYA_V T.hms.hFRYA_adcPulseIntRaw*(1./4096.)/25.
formula FRYB_V T.hms.hFRYB_adcPulseIntRaw*(1./4096.)/25.
TH1F hFRXA 'HMS FRXA; FRXA RAW ADC (chan); Counts' T.hms.hFRXA_adcPulseIntRaw 1000 0 100000
TH1F hFRXA_V 'HMS FRXA; FRXA RAW ADC (Volts); Counts' FRXA_V 1000 0 1.0
TH1F hFRXB 'HMS FRXB; FRXB RAW ADC (chan); Counts' T.hms.hFRXB_adcPulseIntRaw 1000 0 100000
TH1F hFRXB_V 'HMS FRXB; FRXB RAW ADC (Volts); Counts' FRXB_V 1000 0 1.0
TH1F hFRYA 'HMS FRYA; FRYA RAW ADC (chan); Counts' T.hms.hFRYA_adcPulseIntRaw 1000 0 100000
TH1F hFRYA_V 'HMS FRYA; FRYA RAW ADC (Volts); Counts' FRYA_V 1000 0 1.0
TH1F hFRYB 'HMS FRYB; FRYB RAW ADC (chan); Counts' T.hms.hFRYB_adcPulseIntRaw 1000 0 100000
TH1F hFRYB_V 'HMS FRYB; FRYB RAW ADC (Volts); Counts' FRYB_V 1000 0 1.0
TH2F hFRA_XvsY 'HMSFRA_XvsY ; FRXA RAW ADC (Volts); FRYA RAW ADC (Volts)' FRXA_V FRYA_V 1000 0 1.0 1000 0 1.0
TH2F hFRB_XvsY 'HMSFRB_XvsY ; FRXB RAW ADC (Volts); FRYB RAW ADC (Volts)' FRXB_V FRYB_V 1000 0 1.0 1000 0 1.0
formula FRXA_V H.rb.raster.frxaRawAdc*(1./4096.)/25.
formula FRXB_V H.rb.raster.frxbRawAdc*(1./4096.)/25.
formula FRYA_V H.rb.raster.fryaRawAdc*(1./4096.)/25.
formula FRYB_V H.rb.raster.frybRawAdc*(1./4096.)/25.
TH1F pFRXA 'SHMS FRXA; FRXA RAW ADC (chan); Counts' H.rb.raster.frxaRawAdc 1000 0 100000
TH1F pFRXA_V 'SHMS FRXA; FRXA RAW ADC (Volts); Counts' FRXA_V 1000 0 1.0
TH1F pFRXB 'SHMS FRXB; FRXB RAW ADC (chan); Counts' H.rb.raster.frxbRawAdc 1000 0 100000
TH1F pFRXB_V 'SHMS FRXB; FRXB RAW ADC (Volts); Counts' FRXB_V 1000 0 1.0
TH1F pFRYA 'SHMS FRYA; FRYA RAW ADC (chan); Counts' H.rb.raster.fryaRawAdc 1000 0 100000
TH1F pFRYA_V 'SHMS FRYA; FRYA RAW ADC (Volts); Counts' FRYA_V 1000 0 1.0
TH1F pFRYB 'SHMS FRYB; FRYB RAW ADC (chan); Counts' H.rb.raster.frybRawAdc 1000 0 100000
TH1F pFRYB_V 'SHMS FRYB; FRYB RAW ADC (Volts); Counts' FRYB_V 1000 0 1.0
TH2F pFRA_XvsY 'SHMS FRA X vs Y; FRXA RAW ADC (Volts); FRYA RAW ADC (Volts)' FRXA_V FRYA_V 1000 0 1.0 1000 0 1.0
TH2F pFRB_XvsY 'SHMS FRB X vs Y; FRXB RAW ADC (Volts); FRYB RAW ADC (Volts)' FRXB_V FRYB_V 1000 0 1.0 1000 0 1.0
#******************
# EPICS VARIABLES *
#******************
begin epics
IBC3H00CRCUR4
hac_bcm_average
ibcm1
ibcm2
iunser
itov3out
itov4out
IPM3H07A.XPOS
IPM3H07A.YPOS
IPM3H07B.XPOS
IPM3H07B.YPOS
IPM3H07C.XPOS
IPM3H07C.YPOS
IPM3H07A.XRAW
IPM3H07A.YRAW
IPM3H07B.XRAW
IPM3H07B.YRAW
IPM3H07C.XRAW
IPM3H07C.YRAW
end epics
# See $ANALYZER/examples/output_example.def for examples
#
block T.shms.*
#*************
# Fast Raster
#*************
# Assume FADC range is set to 1V and the integration is 25 channels
# Offset in the FADC is about 0.122V or 500 channels.
formula FRXA_V T.shms.pFRXA_adcPulseIntRaw*(1./4096.)/25.
formula FRXB_V T.shms.pFRXB_adcPulseIntRaw*(1./4096.)/25.
formula FRYA_V T.shms.pFRYA_adcPulseIntRaw*(1./4096.)/25.
formula FRYB_V T.shms.pFRYB_adcPulseIntRaw*(1./4096.)/25.
TH1F pFRXA 'SHMS FRXA; FRXA RAW ADC (chan); Counts' T.shms.pFRXA_adcPulseIntRaw 1000 0 100000
formula FRXA_V P.rb.raster.frxaRawAdc*(1./4096.)/25.
formula FRXB_V P.rb.raster.frxbRawAdc*(1./4096.)/25.
formula FRYA_V P.rb.raster.fryaRawAdc*(1./4096.)/25.
formula FRYB_V P.rb.raster.frybRawAdc*(1./4096.)/25.
TH1F pFRXA 'SHMS FRXA; FRXA RAW ADC (chan); Counts' P.rb.raster.frxaRawAdc 1000 0 100000
TH1F pFRXA_V 'SHMS FRXA; FRXA RAW ADC (Volts); Counts' FRXA_V 1000 0 1.0
TH1F pFRXB 'SHMS FRXB; FRXB RAW ADC (chan); Counts' T.shms.pFRXB_adcPulseIntRaw 1000 0 100000
TH1F pFRXB 'SHMS FRXB; FRXB RAW ADC (chan); Counts' P.rb.raster.frxbRawAdc 1000 0 100000
TH1F pFRXB_V 'SHMS FRXB; FRXB RAW ADC (Volts); Counts' FRXB_V 1000 0 1.0
TH1F pFRYA 'SHMS FRYA; FRYA RAW ADC (chan); Counts' T.shms.pFRYA_adcPulseIntRaw 1000 0 100000
TH1F pFRYA 'SHMS FRYA; FRYA RAW ADC (chan); Counts' P.rb.raster.fryaRawAdc 1000 0 100000
TH1F pFRYA_V 'SHMS FRYA; FRYA RAW ADC (Volts); Counts' FRYA_V 1000 0 1.0
TH1F pFRYB 'SHMS FRYB; FRYB RAW ADC (chan); Counts' T.shms.pFRYB_adcPulseIntRaw 1000 0 100000
TH1F pFRYB 'SHMS FRYB; FRYB RAW ADC (chan); Counts' P.rb.raster.frybRawAdc 1000 0 100000
TH1F pFRYB_V 'SHMS FRYB; FRYB RAW ADC (Volts); Counts' FRYB_V 1000 0 1.0
TH2F pFRA_XvsY 'HMSFRA_XvsY ; FRXA RAW ADC (Volts); FRYA RAW ADC (Volts)' FRXA_V FRYA_V 1000 0 1.0 1000 0 1.0
TH2F pFRB_XvsY 'HMSFRB_XvsY ; FRXB RAW ADC (Volts); FRYB RAW ADC (Volts)' FRXB_V FRYB_V 1000 0 1.0 1000 0 1.0
TH2F pFRA_XvsY 'SHMS FRA X vs Y; FRXA RAW ADC (Volts); FRYA RAW ADC (Volts)' FRXA_V FRYA_V 1000 0 1.0 1000 0 1.0
TH2F pFRB_XvsY 'SHMS FRB X vs Y; FRXB RAW ADC (Volts); FRYB RAW ADC (Volts)' FRXB_V FRYB_V 1000 0 1.0 1000 0 1.0
#******************
# EPICS VARIABLES *
#******************
begin epics
IBC3H00CRCUR4
hac_bcm_average
ibcm1
ibcm2
iunser
itov3out
itov4out
IPM3H07A.XPOS
IPM3H07A.YPOS
IPM3H07B.XPOS
IPM3H07B.YPOS
IPM3H07C.XPOS
IPM3H07C.YPOS
end epics
\ No newline at end of file
......@@ -35,20 +35,19 @@ void replay_hms_raster_simple(Int_t RunNumber=0, Int_t MaxEvent=0) {
gHcParms->Load(gHcParms->GetString("g_ctp_parm_filename"));
gHcParms->Load(gHcParms->GetString("g_ctp_calib_filename"));
// Load params for HMS trigger configuration
gHcParms->Load("PARAM/TRIG/thms_raster.param");
// Load the Hall C style detector map
gHcDetectorMap = new THcDetectorMap();
gHcDetectorMap->Load("MAPS/HMS/DETEC/RASTER/hraster_simple.map");
gHcDetectorMap->Load("MAPS/HMS/DETEC/RASTER/hraster.map");
// Add trigger apparatus
THaApparatus* TRG = new THcTrigApp("T", "TRG");
gHaApps->Add(TRG);
// Add trigger detector to trigger apparatus
THcTrigDet* hms = new THcTrigDet("hms", "HMS Trigger Information");
TRG->AddDetector(hms);
// Add handler for EPICS events
THaEpicsEvtHandler *hcepics = new THaEpicsEvtHandler("epics", "HC EPICS event type 180");
gHaEvtHandlers->Add(hcepics);
// Add Rastered Beam Apparatus
THaApparatus* beam = new THcRasteredBeam("H.rb", "Rastered Beamline");
gHaApps->Add(beam);
// Set up the analyzer - we use the standard one,
// but this could be an experiment-specific one as well.
// The Analyzer controls the reading of the data, executes
......@@ -63,7 +62,7 @@ void replay_hms_raster_simple(Int_t RunNumber=0, Int_t MaxEvent=0) {
// Define the run(s) that we want to analyze.
// We just set up one, but this could be many.
THaRun* run = new THaRun( pathList, Form(RunFileNamePattern, RunNumber) );
THcRun* run = new THcRun( pathList, Form(RunFileNamePattern, RunNumber) );
// Eventually need to learn to skip over, or properly analyze
// the pedestal events
......@@ -79,6 +78,8 @@ void replay_hms_raster_simple(Int_t RunNumber=0, Int_t MaxEvent=0) {
// 1 = counter is # of all decode reads
// 2 = counter is event number
analyzer->SetEvent(event);
// Set EPICS event type
analyzer->SetEpicsEvtType(180);
// Define crate map
analyzer->SetCrateMapFileName("MAPS/db_cratemap.dat");
// Define output ROOT file
......
......@@ -34,20 +34,18 @@ void replay_shms_raster_simple (Int_t RunNumber = 0, Int_t MaxEvent = 0) {
// g_ctp_parm_filename and g_decode_map_filename should now be defined.
gHcParms->Load(gHcParms->GetString("g_ctp_kinematics_filename"), RunNumber);
gHcParms->Load(gHcParms->GetString("g_ctp_parm_filename"));
// Load params for HMS trigger configuration
gHcParms->Load("PARAM/TRIG/tshms_raster.param");
// Load the Hall C detector map
gHcDetectorMap = new THcDetectorMap();
gHcDetectorMap->Load("MAPS/SHMS/DETEC/RASTER/praster_simple.map");
gHcDetectorMap->Load("MAPS/SHMS/DETEC/RASTER/praster.map");
// Add handler for EPICS events
THaEpicsEvtHandler *hcepics = new THaEpicsEvtHandler("epics", "HC EPICS event type 180");
gHaEvtHandlers->Add(hcepics);
// Add Rastered Beam Apparatus
THaApparatus* beam = new THcRasteredBeam("P.rb", "Rastered Beamline");
gHaApps->Add(beam);
// Add trigger apparatus
THaApparatus* TRG = new THcTrigApp("T", "TRG");
gHaApps->Add(TRG);
// Add trigger detector to trigger apparatus
THcTrigDet* shms = new THcTrigDet("shms", "SHMS Trigger Information");
TRG->AddDetector(shms);
// Set up the analyzer - we use the standard one,
// but this could be an experiment-specific one as well.
// The Analyzer controls the reading of the data, executes
......@@ -62,7 +60,7 @@ void replay_shms_raster_simple (Int_t RunNumber = 0, Int_t MaxEvent = 0) {
// Define the run(s) that we want to analyze.
// We just set up one, but this could be many.
THaRun* run = new THaRun( pathList, Form(RunFileNamePattern, RunNumber) );
THcRun* run = new THcRun( pathList, Form(RunFileNamePattern, RunNumber) );
// Eventually need to learn to skip over, or properly analyze
// the pedestal events
......@@ -80,6 +78,8 @@ void replay_shms_raster_simple (Int_t RunNumber = 0, Int_t MaxEvent = 0) {
analyzer->SetEvent(event);
// Define crate map
analyzer->SetCrateMapFileName("MAPS/db_cratemap.dat");
// Set EPICS event type
analyzer->SetEpicsEvtType(180);
// Define output ROOT file
analyzer->SetOutFile(ROOTFileName.Data());
// Define DEF-file
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment