2 # File:    standard_reco_megadumper_sbnd.fcl 
    3 # Purpose: Dumps a lot of stuff on text files. 
    6 # This job dumps into text files most of the data products contained in a 
    7 # typical SBND reconstruction output file. 
    8 # The list of files is shown below. The size of the output is huge, especially 
    9 # because of the complete dump of raw digits and wire signals (and, for crowded 
   10 # events, charge at the anode). And it takes quite a while to complete (seen 
   11 # >2' per crowded event on sbndbuild01.fnal.gov). 
   16 #   - all generator          `simb::MCTruth`         (`DumpMCTruth.log`) 
   17 # * detector simulation: 
   18 #   -   `largeant`:          `sim::SimChannel`       (`DumpSimChannels.log`) 
   19 #                            `sim::SimPhotons`       (`DumpSimPhotons.log`) 
   20 #                            `sim::AuxDetSimChannel` not dumped (no dumper available) 
   21 #                            `sbnd::crt::CRTData`    not dumped (no dumper available) 
   22 #   -   `mcreco`:            `sim::MCTrack`          (`DumpMCTracks.log`) 
   23 #                            `sim::MCShower`         (`DumpMCShowers.log`) 
   24 # * digitisation and back: 
   25 #   -   `daq`:               `raw::RawDigit`         (`DumpDigits.log`) 
   27 #   -   `caldata`:           `recob::Wire`           (`DumpWires.log`) 
   28 #   * hit finding           (`recob::Hit`) 
   29 #     - `gaushit`                                    (`DumpHitsGaus.log`) 
   30 #     - `fasthit`                                    (`DumpHitsFast.log`) 
   31 #     - `linecluster`                                (`DumpHitsLC.log`) 
   32 #   * clustering            (`recob::Cluster`) 
   33 #     - `blurredcluster`:                            (`DumpClustersBlurred.log`) 
   34 #     - `linecluster`:                               (`DumpClustersLineCluster.log`) 
   35 #     - `pandora`:                                   (`DumpClustersPandora.log`) 
   36 #   * tracking              (`recob::Track`) 
   37 #     - `pandora`                                    (`DumpTracksPandora.log`) 
   38 #     - `pmalgtrackmaker`                            (`DumpTracksPMA.log`) 
   39 #   * showers               (`recob::Shower`)        none (no dumper available) 
   40 #     - `pandoraShower`                              not dumped (no dumper available) 
   41 #     - `emshower`                                   not dumped (no dumper available) 
   42 #   * vertices              (`recob::Vertex`) 
   43 #     - `pandora`                                    (`DumpVerticesPandora.log`) 
   44 #     - `pmalgtrackmaker`                            (`DumpVerticesPMA.log`) 
   45 #     - `linecluster`                                (`DumpVerticesLC.log`) 
   46 #   * particle flow objects (`recob::PFParticle`) 
   47 #     - `pandora`                                    (`DumpPFParticlesPandora.log`) 
   48 #     - `pmalgtrackmaker`                            (`DumpPFParticlesPMA.log`) 
   49 #   * space points          (`recob::SpacePoint`) 
   50 #     - `emshower`                                   (`DumpSpacePointsEMShower.log`) 
   51 #     - `pandora`                                    (`DumpSpacePointsPandora.log`) 
   54 #   * pandora (`pandora`, `pandoraShower`, `pandoraTrack`): 
   55 #     - `recob::Clusters`                            (`DumpClustersPandora.log`) 
   56 #     - `recob::PFParticle`                          (`DumpPFParticlesPandora.log`) 
   57 #     - `recob::Vertex`                              (`DumpVerticesPandora.log`) 
   58 #     - `recob::SpacePoint`                          (`DumpSpacePointsPandora.log`) 
   59 #     - `recob::T0`                                  not dumped (no dumper available) 
   60 #     - `recob::Track`       `pandoraTrack`          (`DumpTracksPandora.log`) 
   61 #     - `recob::Shower`      `pandoraShower`         not dumped (no dumper available) 
   62 #     - `recob::PCAxis`      `pandoraShower`         (`DumpPCAxesPandoraShower.log`) 
   63 #   * Projection Matching Algorithm (`pmalgtrackmaker`): 
   64 #     - `recob::PFParticle`                          (`DumpPFParticlesPMA.log`) 
   65 #     - `recob::Vertex`      `pmalgtrackmaker`, `pmalgtrackmaker:node`, `pmalgtrackmaker:kink` (`DumpVerticesPMA.log`) 
   66 #     - `recob::Track`                               (`DumpTracksPMA.log`) 
   67 #     - `recob::SpacePoint`                          (`DumpTracksPMA.log`) 
   68 #     - `recob::T0`:                                 not dumped (no dumper available) 
   69 #     - `recob::CosmicTag`                           not dumped (no dumper available) 
   70 #     - `anab::Calorimetry`  `pmatrackcalo`          not dumped (no dumper available) 
   71 #   * line cluster/trajectory cluster (`linecluster`): 
   72 #     - `recob::Clusters`                            (`DumpClustersLineCluster.log`) 
   73 #     - `recob::Vertex`                              (`DumpVerticesLineCluster.log`) 
   74 #     - `recob::EndPoint2D`                          not dumped (no dumper available) 
   77 # Service dependencies: 
   82 # 20180309 (petrillo@fnal.gov) [v1.0] 
   83 #   first version, based on current `standard_reco_basic_sbnd.fcl` 
   91   #   debugModules: [ "*" ] 
   94       # grab all the "DumpMCTruth" messages and put them in DumpMCTruth.log 
  106       # grab all the "DumpMCParticles" messages and put them in DumpMCParticles.log 
  110           DumpMCParticles: { limit: -1 }
 
  111           default: { limit: 0 }
 
  118       # grab all the "DumpMCShowers" messages and put them in DumpMCShowers.log 
  122           DumpMCShowers: { limit: -1 }
 
  123           default: { limit: 0 }
 
  130       # grab all the "DumpSimChannels" messages and put them in DumpSimChannels.log 
  134           DumpSimChannels: { limit: -1 }
 
  135           default: { limit: 0 }
 
  142       # grab all the "DumpSimPhotons" messages and put them in DumpSimPhotons.log 
  146           DumpSimPhotons: { limit: -1 }
 
  147           default: { limit: 0 }
 
  154       # grab all the "DumpDigits" messages and put them in DumpRawDigits.log 
  158           DumpDigits: { limit: -1 }
 
  159           default: { limit: 0 }
 
  166       # grab all the "DumpWires" messages and put them in DumpWires.log 
  170           DumpWires: { limit: -1 }
 
  171           default: { limit: 0 }
 
  178       # grab all the "DumpHitsGaus" messages and put them in DumpHitsGaus.log 
  182           DumpHitsGaus: { limit: -1 }
 
  183           default: { limit: 0 }
 
  190       # grab all the "DumpHitsLC" messages and put them in DumpHitsLineCluster.log 
  191       LogHitsLineCluster: {
 
  194           DumpHitsLC: { limit: -1 }
 
  195           default: { limit: 0 }
 
  200       } # LogHitsLineCluster
 
  202       # grab all the "DumpHitsFast" messages and put them in DumpHitsFast.log 
  206           DumpHitsFast: { limit: -1 }
 
  207           default: { limit: 0 }
 
  214       # grab all the "DumpClustersPandora" messages and put them in DumpClustersPandora.log 
  215       LogClustersPandora: {
 
  218           DumpClustersPandora: { limit: -1 }
 
  219           default: { limit: 0 }
 
  224       } # LogClustersPandora
 
  226       # grab all the "DumpClustersLC" messages and put them in DumpClustersLineCluster.log 
  230           DumpClustersLC: { limit: -1 }
 
  231           default: { limit: 0 }
 
  233         filename: 
"DumpClustersLineCluster.log" 
  238       # grab all the "DumpClustersBlurred" messages and put them in DumpClustersBlurred.log 
  239       LogClustersBlurred: {
 
  242           DumpClustersBlurred: { limit: -1 }
 
  243           default: { limit: 0 }
 
  248       } # LogClustersBlurred
 
  250       # grab all the "DumpPFParticlesPandora" messages and put them in DumpPFParticlesPandora.log 
  251       # (also grab "DumpSeedsPandora", "DumpVerticesPandora", "DumpTracksPandora" and "DumpPCAxesPandoraShower) 
  252       LogPFParticlesPandora: {
 
  255           DumpSeedsPandora:        { limit: -1 }
 
  256           DumpVerticesPandora:     { limit: -1 }
 
  257           DumpTracksPandora:       { limit: -1 }
 
  258           DumpPFParticlesPandora:  { limit: -1 }
 
  259           DumpSpacePointsPandora:  { limit: -1 }
 
  260           DumpPCAxesPandoraShower: { limit: -1 }
 
  261           default: { limit: 0 }
 
  263         filename: 
"DumpPFParticlesPandora.log" 
  266       } # LogPFParticlesPandora
 
  268       # grab all the "DumpPFParticlesPMA" messages and put them in DumpPFParticlesPMA.log 
  269       # (also grab "DumpSeedsPMA", "DumpVerticesPMA" and "DumpTracksPMA") 
  273           DumpSeedsPMA:       { limit: -1 }
 
  274           DumpVerticesPMA:    { limit: -1 }
 
  275           DumpTracksPMA:      { limit: -1 }
 
  276           DumpPFParticlesPMA: { limit: -1 }
 
  277           default: { limit: 0 }
 
  282       } # LogPFParticlesPMA
 
  284       # grab all the "DumpVerticesLC" messages and put them in DumpVerticesLineCluster.log 
  288           DumpVerticesLC:    { limit: -1 }
 
  289           default: { limit: 0 }
 
  291         filename: 
"DumpVerticesLineCluster.log" 
  296       # grab all the "DumpSpacePointsEMShower" messages and put them in DumpSpacePointsEMShower.log 
  297       LogSpacePointsEMShower: {
 
  300           DumpSpacePointsEMShower:    { limit: -1 }
 
  301           default: { limit: 0 }
 
  303         filename: 
"DumpSpacePointsEMShower.log" 
  306       } # LogSpacePointsEMShower
 
  309       # the rest of the output 
  313           DumpMCParticles:         { limit: 0 }
 
  314           DumpMCTracks:            { limit: 0 }
 
  315           DumpMCShowers:           { limit: 0 }
 
  316           DumpSimChannels:         { limit: 0 }
 
  317           DumpSimPhotons:          { limit: 0 }
 
  318           DumpRawDigits:           { limit: 0 }
 
  319           DumpWires:               { limit: 0 }
 
  320           DumpHitsGaus:            { limit: 0 }
 
  321           DumpHitsFast:            { limit: 0 }
 
  322           DumpHitsLC:              { limit: 0 }
 
  323           DumpClustersPandora:     { limit: 0 }
 
  324           DumpClustersLineCluster: { limit: 0 }
 
  325           DumpClustersBlurred:     { limit: 0 }
 
  326           DumpSeedsPandora:        { limit: 0 }
 
  327           DumpSpacePointsPandora:  { limit: 0 }
 
  328           DumpVerticesPandora:     { limit: 0 }
 
  329           DumpTracksPandora:       { limit: 0 }
 
  330           DumpPCAxesPandoraShower: { limit: 0 }
 
  331           DumpPFParticlesPandora:  { limit: 0 }
 
  332           DumpSeedsPMA:            { limit: 0 }
 
  333           DumpVerticesPMA:         { limit: 0 }
 
  334           DumpTracksPMA:           { limit: 0 }
 
  335           DumpPFParticlesPMA:      { limit: 0 }
 
  336           DumpVerticesLC:          { limit: 0 }
 
  337           DumpSpacePointsEMShower: { limit: 0 }
 
  360     # simb::MCTruth from all generators 
  365       # output category ("OutputCategory" by default), useful for filtering (see above) 
  366       OutputCategory: 
"DumpMCTruth" 
  368       # specify the label of the simb::MCTruth data products (or producers) 
  369       # if not specified, will print all of them 
  370     #  InputTruth: [ "generator" ] 
  372       # print this many trajectory points per output line (default: 3; 0 skips all) 
  379     # simb::MCParticles from LArG4 (`largeant`) 
  384       # output category ("OutputCategory" by default), useful for filtering (see above) 
  385       OutputCategory: 
"DumpMCParticles" 
  387       # specify the label of the simb::MCParticle data product (or producer) 
  388       InputParticles: 
"largeant" 
  390       # print this many trajectory points per output line (default: 3; 0 skips all) 
  396     # sim::MCTrack (actually not supported by LArSoft) 
  401       # output category ("OutputCategory" by default), useful for filtering (see above) 
  402       OutputCategory: 
"DumpMCTracks" 
  404       # specify the label of the sim::MCTrack data product (or producer) 
  405       InputTracks: 
"mcreco" 
  410     # sim::MCShower (actually not supported by LArSoft) 
  415       # output category ("OutputCategory" by default), useful for filtering (see above) 
  416       OutputCategory: 
"DumpMCShowers" 
  418       # specify the label of the sim::MCShower data product (or producer) 
  419       InputShowers: 
"mcreco" 
  425     # sim::SimChannel from LArG4 (`largeant`) 
  430       # output category ("OutputCategory" by default), useful for filtering (see above) 
  431       OutputCategory: 
"DumpSimChannels" 
  433       # specify the label of the sim::SimChannels data product (or producer) 
  434       InputSimChannels: 
"largeant" 
  440     # sim::SimPhotons from LArG4 (`largeant`) 
  445       # output category ("OutputCategory" by default), useful for filtering (see above) 
  446       OutputCategory: 
"DumpSimPhotons" 
  448       # specify the label of the sim::SimPhotons data product (or producer) 
  449       InputPhotons: 
"largeant" 
  455     # raw::RawDigit (`daq`) 
  460       # specify the label of the raw::RawDigit producer 
  461       # in the comment, default is reported 
  462       DetSimModuleLabel:  
"daq" 
  464       # output category ("DumpDigits" by default), useful for filtering (see above) 
  465       OutputCategory: 
"DumpDigits" 
  467       # set DigitsPerLine to 0 to suppress the output of the wire content 
  470       # set the pedestal to be subtracted to all the digits (default: 0) 
  477     # recob::Wire (`caldata`) 
  482       # specify the label of the recob::Wire producer 
  483       CalWireModuleLabel: 
"caldata" 
  485       # output category ("DumpWires" by default), useful for filtering (see above) 
  486       OutputCategory: 
"DumpWires" 
  488       # set DigitsPerLine to 0 to suppress the output of the wire content 
  495     # recob:Hit (`gaushit`) 
  500       # output category ("DumpHits" by default), useful for filtering (see above) 
  501       OutputCategory: 
"DumpHitsGaus" 
  503       # specify the label of the recob::Hit producer 
  504       HitModuleLabel:  
"gaushit" 
  506       # check that the correct raw digit is associated to each hit 
  507       CheckRawDigitAssociation: 
true 
  508       # check that the correct wire is associated to each hit 
  509       CheckWireAssociation:     
true 
  515     # recob:Hit (`linecluster`) 
  520       # output category ("DumpHits" by default), useful for filtering (see above) 
  521       OutputCategory: 
"DumpHitsLC" 
  523       # specify the label of the recob::Hit producer 
  524       HitModuleLabel:  
"linecluster" 
  526       # do not check that the correct raw digit is associated to each hit (associations are not produced) 
  527       CheckRawDigitAssociation: 
false 
  528       # do not check that the correct wire is associated to each hit (associations are not produced) 
  529       CheckWireAssociation:     
false 
  535     # recob:Hit (`fasthit`) 
  540       # output category ("DumpHits" by default), useful for filtering (see above) 
  541       OutputCategory: 
"DumpHitsFast" 
  543       # specify the label of the recob::Hit producer 
  544       HitModuleLabel:  
"fasthit" 
  546       # check that the correct raw digit is associated to each hit 
  547       CheckRawDigitAssociation: 
true 
  548       # do not check that the correct wire is associated to each hit (associations are not produced) 
  549       CheckWireAssociation:     
false 
  555     # recob::Cluster (`pandora`) 
  557     dumpclusterspandora: {
 
  560       # output category ("DumpClusters" by default), useful for filtering (see above) 
  561       OutputCategory: 
"DumpClustersPandora" 
  562       # set HitsPerLine to 0 to suppress the output of the cluster hits 
  565       # specify the label of the recob::Cluster and recob::Hit producers 
  566       # (the latter is currently unused) 
  567       ClusterModuleLabel: 
"pandora" 
  568     #  HitModuleLabel:  "gaushit" 
  570     } # dumpclusterspandora
 
  574     # recob::Cluster (`linecluster`) 
  579       # output category ("DumpClusters" by default), useful for filtering (see above) 
  580       OutputCategory: 
"DumpClustersLC" 
  581       # set HitsPerLine to 0 to suppress the output of the cluster hits 
  584       # specify the label of the recob::Cluster and recob::Hit producers 
  585       # (the latter is currently unused) 
  586       ClusterModuleLabel: 
"linecluster" 
  587     #  HitModuleLabel:  "linecluster" 
  593     # recob::Cluster (`blurredcluster`) 
  595     dumpclustersblurred: {
 
  598       # output category ("DumpClusters" by default), useful for filtering (see above) 
  599       OutputCategory: 
"DumpClustersBlurred" 
  600       # set HitsPerLine to 0 to suppress the output of the cluster hits 
  603       # specify the label of the recob::Cluster and recob::Hit producers 
  604       # (the latter is currently unused) 
  605       ClusterModuleLabel: 
"blurredcluster" 
  606     #  HitModuleLabel:  "gaushit" 
  608     } # dumpclustersblurred
 
  612     # `pandora`: recob::PFParticle, recob::Track (`pandoraTrack`), recob::Seed, 
  613     # `          recob::Vertex, recob::PCAxis (`pandoraShower`) 
  615     dumpparticlespandora: {
 
  618       # output category ("DumpPFParticles" by default), useful for filtering (see above) 
  619       OutputCategory: 
"DumpPFParticlesPandora" 
  621       # specify the label of recob::PFParticle producer 
  622       PFModuleLabel: 
"pandora" 
  624       # max descend steps into particle hierarchy 
  627       # do not produce dot files (false by default) 
  628       MakeParticleGraphs: 
false 
  630     } # dumpparticlespandora
 
  635       # output category ("DumpTracks" by default), useful for filtering (see above) 
  636       OutputCategory: 
"DumpTracksPandora" 
  637       # approximate number of way point printed 
  640       # specify the label of the recob::Track producer 
  643       # print the number of associated hits? (default: true) 
  644       HitAssociations:        
true 
  645       # print the index of associated hits? (default: false) 
  647       # do not print the number and index of associated space points (not available) 
  648       SpacePointAssociations: 
false 
  649       PrintSpacePoints:       
false 
  650       # print the number and index of associated particle-flow particles? (default: true) 
  651       ParticleAssociations:   
true 
  653     } # dumptrackspandora
 
  655     dumpspacepointspandora: {
 
  658       # output category ("DumpSpacePoints" by default), useful for filtering (see above) 
  659       OutputCategory: 
"DumpSpacePointsPandora" 
  661       # specify the label of recob::SpacePoint producer 
  662       SpacePointModuleLabel: 
"pandora" 
  664     } # dumpspacepointspandora
 
  666     dumpverticespandora: {
 
  669       # output category ("DumpVertices" by default), useful for filtering (see above) 
  670       OutputCategory: 
"DumpVerticesPandora" 
  672       # specify the label of recob::Vertex producer 
  675     } # dumpparticlespandora
 
  677     dumppxaxespandorashower: {
 
  680       # output category ("DumpVertices" by default), useful for filtering (see above) 
  681       OutputCategory: 
"DumpPCAxesPandoraShower" 
  683       # specify the label of recob::Vertex producer 
  686     } # dumppxaxespandorashower
 
  690     # `pmalgtrackmaker`: recob::Track, recob::PFParticle, recob::Seed, recob::Vertex 
  695       # output category ("DumpPFParticles" by default), useful for filtering (see above) 
  696       OutputCategory: 
"DumpPFParticlesPMA" 
  698       # specify the label of recob::PFParticle producer 
  699       PFModuleLabel: 
"pmalgtrackmaker" 
  701       # max descend steps into particle hierarchy 
  704       # do not produce dot files (false by default) 
  705       MakeParticleGraphs: 
false 
  712       # output category ("DumpTracks" by default), useful for filtering (see above) 
  713       OutputCategory: 
"DumpTracksPMA" 
  714       # approximate number of way point printed 
  717       # specify the label of the recob::Track producer 
  720       # print the number of associated hits? (default: true) 
  721       HitAssociations:        
true 
  722       # print the index of associated hits? (default: false) 
  724       # print the number of associated space points? (default: true) 
  725       SpacePointAssociations: 
true 
  726       # print the index of associated space points? (default: false) 
  727       PrintSpacePoints:       
true 
  728       # print the number and index of associated particle-flow particles? (default: true) 
  729       ParticleAssociations:   
true 
  736       # output category ("DumpVertices" by default), useful for filtering (see above) 
  737       OutputCategory: 
"DumpVerticesPMA" 
  739       # specify the label of recob::Vertex producer 
  744     dumpverticespmanode: {
 
  747       # output category ("DumpVertices" by default), useful for filtering (see above) 
  748       OutputCategory: 
"DumpVerticesPMA" 
  750       # specify the label of recob::Vertex producer 
  753     } # dumpverticespmanode
 
  755     dumpverticespmakink: {
 
  758       # output category ("DumpVertices" by default), useful for filtering (see above) 
  759       OutputCategory: 
"DumpVerticesPMA" 
  761       # specify the label of recob::Vertex producer 
  764     } # dumpverticespmakink
 
  768     # recob::Vertex (`linecluster`) 
  773       # output category ("DumpVertices" by default), useful for filtering (see above) 
  774       OutputCategory: 
"DumpVerticesLC" 
  776       # specify the label of recob::Vertex producer 
  783     # recob::SpacePoint (`emshower`) 
  785     dumpspacepointsemshower: {
 
  788       # output category ("DumpSpacePoints" by default), useful for filtering (see above) 
  789       OutputCategory: 
"DumpSpacePointsEMShower" 
  791       # specify the label of recob::SpacePoint producer 
  792       SpacePointModuleLabel: 
"emshower" 
  794     } # dumpspacepointsemshower
 
  803     , dumpsimchannels, dumpsimphotons
 
  809     , dumpclusterspandora
 
  811     , dumpclustersblurred
 
  813     , dumpparticlespandora
 
  815     , dumpspacepointspandora
 
  816     , dumpverticespandora
 
  817     , dumppxaxespandorashower
 
  821     , dumpverticespmanode
 
  822     , dumpverticespmakink
 
  824     , dumpspacepointsemshower
 
BEGIN_PROLOG triggeremu_data_config_icarus settings PMTADCthresholds sequence::icarus_stage0_multiTPC_TPC physics sequence::icarus_stage0_EastHits_TPC physics sequence::icarus_stage0_WestHits_TPC physics producers purityana0 caloskimCalorimetryCryoE physics caloskimCalorimetryCryoW physics sequence::physics pathW services
 
BEGIN_PROLOG pandoraGausReCaloCryo0 TrackModuleLabel
 
process_name drop raw::OpDetWaveforms_DataApr2016RecoStage1_saturation_ * physics
 
process_name gaushitTPC3 gaushitTPC3 filters
 
BEGIN_PROLOG could also be dds filename
 
physics producers trigslidewindowOR6mW physics effSlidingOR6mW physics end_paths
 
physics analyzers analysistree true physics analyzers analysistree VertexModuleLabel
 
process_name dumpmctracks
 
void DumpMCTruth(Stream &&out, simb::MCTruth const &truth, unsigned int pointsPerLine, std::string indent, std::string firstIndent)
Dumps the content of the specified MC truth in the output stream. 
 
BEGIN_PROLOG triggeremu_data_config_icarus settings PMTADCthresholds sequence::icarus_stage0_multiTPC_TPC physics sequence::icarus_stage0_EastHits_TPC physics sequence::icarus_stage0_WestHits_TPC physics producers purityana0 module_type
 
process_name sequence::icarus_reco_cluster3d physics trigger_paths
 
BEGIN_PROLOG sequence::SlidingWindowTriggerPatternsOppositeWindows END_PROLOG process_name