UROC: Deborah Harris

MINERvA Software Authorization

  • Fixed .k5login entry for special kerberos principal. (Forgot to add principal with @FNAL.GOV)

MINOS RMS Insallation

  • Installed the version we use at Tufts – Contains modified rms.sh
  • Configurations as in wiki, used port 22
  • 2 Missing Libraries Installed
    • libjpeg62
    • libungif-bin
  • Fixed .k5login on minos-gateway-nd.fnal.gov with connecting using Tufts UROC. (Forgot to add principal with @FNAL.GOV)\
  • After some connection trials with different ports I started to get the following ERROR on Debbie’s and Tufts Uroc
    • Socket Server = localhost:19123
    • channel 2: open failed: connect failed: Connection refused
    • HistoDisplay: ERROR: Socket->Receive failed. resRecv = -1.
    • ==> Closing the socket connection..
    •  ==> Please open again.
    • Failed to get ConsumerInfo

Updates

  • Proton & Pi0 Kinematics

setTrackProngTruth()

  • Taken from Tammy’s NukeCCQE – 04/29/2014
  • For muon and proton prongs saves the following information:
    • “isProtonInsideOD”
    • “ntrajProtonProng”
    • “trajProtonProngPrimary”
    • “trajProtonProngPDG”
    • “trajProtonProngMomentum” – “trajProtonTheta”
    • “trajProtonPhi”
    • “endProtonTrajMomentum” – “endProtonTrajXPosition”
    • “endProtonTrajYPosition”
    • “endProtonTrajZPosition”

Job Submission

./ProcessAna.py –mc –run 10205 –ana_tool CCDeltaPlusAna –outdir /minerva/data/users/oaltinok/CCDeltaPlus/MC/test2

Date

Type

Version

PlayList

Run

Subrun

ana_tool

Other

Result

04/29/2014

MC

resurrection

10205

all

CCDeltaPlusAna

Success

Proton Reconstruction and Other Updates

Proton Reconstruction

  • Plan Completed! Except truth match and marking prong with highest proton score: PrimaryProton selection left the NTuple Analysis Stage

interpretEvent()

interPretEvent() Flow:

  1. Identify and Store – Muon and Proton Prongs
  2. Calculate and Set Muon Kinematics
    • setMuonParticleData( nuInt, muonProng);
  3. Calculate and Set Proton Kinematics
    • setProtonParticleData(nuInt,protonProngs,protonParticles,vertexZ);
  4. Calculate and Set Vertex Parameters
  • Future plan: Increase modularity by creating functions for each stage

Reconstruction Cut List – 04/28/2014

Type

Name

Value

Event

Is Plausible? (MC Only)

truth && !truthIsPlausible(truth)

BadObject flag

event->filtertaglist()->isFilterTagTrue( AnaFilterTags::BadObject() )

Vertex

Is Vertex Exist?

!(event->hasInteractionVertex())

Is Null Vertex?

interactionVertex == NULL

Is Analyzable?

Apothem = 1000, UpStreamZ = 5750, DownStreamZ = 8700

Is Fiducial?

Apothem = 850, UpStreamZ = 5990, DownStreamZ = 8340

Muon

Is Muon Exist or NULL?

!muonProng

Is Plausible? (MC Only)

m_doPlausibilityCuts && !muonIsPlausible( muonProng, mc_frac)

Is Muon Good?

muonPart->score() >= (m_minMuonScore = 0.9)

Michel

Is Vertex Michel Exist?

foundMichel == true

Is End Point Michel Exist?

foundMichel == true

Proton

Is Proton Good?

getProtonProng() uses “m_minProtonScore = 0.1”

 

tagTruth()

  • Fiducial Volume Check
  • Prints Final State Particles with Parents
    • Study for primary and secondary particles in Final State
  • Count Number of Final State Particles
    • proton, neutron
    • mu-, mu+
    • pi0, pi-,pi+
    • delta+, gamma, other
  • Find Signal – CC Neutrino Interaction with FS Particles: muon, proton, pi0
  • Target Material
  • Vertex module and plane
  • Muon Kinematics

 

Updates

reconstructEvent()

  • After including the following functions the package does NOT have a complete structure to run with ProcessAna.py
  • interpretEvent() must be modified accordingly

Michel Tool

  • Brandon’s CCPionInc Package have a very detailed Michel Study
  • Vertex Michel: Look for Michels near vertex
  • End Point Michel: Look for Michels at the end point of short prongs.
  • MAKE CUT – Vertex and End Point Michels
  • My current plan is selecting my signal only. I will deal with background studies later.

Other Reconstructed Values

  • Determine vertex have a broken track
  • Get total visible energy in PhysicsEvent
  • Count long and short tracks in the event
  • Calculate dead time
  • Get event time

Plan for Proton Reconstruction

  1. Check all prongs except Muon for End Point Michel
  2. If a prong has End Point Michel, CUT that event
  3. If the event survives the end point Michel: Create particles from prongs using proton and pion hypotheses
  4. Mark the prong with highest proton score as PrimaryProton
  5. Calculate and Record its kinematics under proton hypothesis
  6. Add truth match!

 

Update on Event Selection

Event Plausibility

  • MC Plausibility
    • Default plausibility means that underlying truth is likely something to be rejected by standard Minos
  • Match CC analysis
  • Does this event carry a reco object with a BadObject flag?
    • If there is a BadObject in the event, do NOT reconstruct

Vertex Reconstruction

  • Require vertex analyzability so that we don’t run as much reco
    • Analyzable Volume (Vertex Must be inside this volume before running AnchoredShortTracks )
      • m_recoHexApothem = 1000.0*CLHEP::mm;
      • m_recoUpStreamZ = 5750.0*CLHEP::mm;
      • m_recoDownStreamZ = 8700.0*CLHEP::mm;
  • Using m_ccPionIncUtils->makeShortTracks(event) to create vertex-anchored short track Prongs
    • This method refits vertex
  • Require vertex to be in fiducial volume
    • If MC Event
      • Smear the vertex position by 1mm 1mm 10mm, then record whether the smeared vertex passes the fiducial volume cut
    • Fiducial Volume (Same as before)
      • m_fidHexApothem = 850.0*CLHEP::mm;
      • m_fidUpStreamZ = 5990.0*CLHEP::mm; // ~middle of module 27, plane 1
      • m_fidDownStreamZ = 8340.0*CLHEP::mm; // ~middle of module 79, plane 1

v3_1

  • Detailed analysis of the Job Submission on 04/16/2014
  • Vertex Reconstruction Quality Check (True vs Reco)
  • findBestProton() – Selects highest score proton from reco sample
  • See Presentation: GroupMeetings/Delta_p/04_17_CCDeltaPlus_Update

v3_0

  • Package focuses only CCDeltaPlusAna NTuples
    • Other Analysis Classes removed – See previous versions for them
  • Class: CutNumberList Removed
    • Poor performance & handling
    • It was not a good idea at the beginning!
  • Class Particle
    • New variable with 1D Histogram: particleScore
  • Muon and Proton Reco values modified according to CCDeltaPlusAna NTuple output

Proton Reconstruction

  • Proton Reconstruction taken from Tammy’s NukeCCQETwoTrack – 2014_04_15
  • Updated Reconstruction Cut List

Type

Name

Value

Event

Is Plausible? (MC Only)

truth && !truthIsPlausible(truth)

Vertex

Is Vertex Exist?

!(event->hasInteractionVertex())

Is Null Vertex?

!interactionVertex

Is Fiducial?

Apothem = 850, UpStreamZ = 5990, DownStreamZ = 8340

Michel

Is Exist?

foundMichel == true

Muon

Is Muon Exist or NULL?

!muonProng

Is Plausible? (MC Only)

m_doPlausibilityCuts && !muonIsPlausible( muonProng, mc_frac)

Is Muon Good?

muonPart->score() >= (m_minMuonScore = 0.9)

Proton

Is Proton Good?

getProtonProng() uses “m_minProtonScore = 0.1”

  • Finding Proton using dEdX Tool and searching each prong with Proton and Pion Hypotheses

Job Submission

./ProcessAna.py –mc –run 10205 –ana_tool CCDeltaPlusAna –outdir /minerva/data/users/oaltinok/CCDeltaPlus/MC/test

Date

Type

Version

PlayList

Run

Subrun

ana_tool

Other

Result

04/16/2014

MC

resurrection

10205

all

CCDeltaPlusAna

Success

 

Update

Job Submission

./ProcessAna.py –mc –run 10205 –subrun 1 –ana_tool CCDeltaPlusAna –outdir /minerva/data/users/oaltinok/CCDeltaPlus/MC/test

Date

Type

Version

PlayList

Run

Subrun

ana_tool

Other

Result

04/15/2014

MC

resurrection

10205

1

CCDeltaPlusAna

Success

  • Results indicate that, the algorithm does not fill the Cut_* values.
  • Function: interpretFailEvent() Added
    • Keeps all events if the Bool Variable m_store_all_events is set to true
  • Keeping all events and Cut_* values are filled accordingly.

Development Update

Vertex and Muon Reconstruction

  • Muon Reconstruction taken from Brandon’s CCNuPionInc – 2014_04_14
  • Reconstruction Level Cut List

Type

Name

Value

Event

Is Plausible? (MC Only)

truth && !truthIsPlausible(truth)

Vertex

Is Vertex Exist?

!(event->hasInteractionVertex())

Is Null Vertex?

!interactionVertex

Is Fiducial?

Apothem = 850, UpStreamZ = 5990, DownStreamZ = 8340

Muon

Is Muon Exist or NULL?

!muonProng

Is Plausible? (MC Only)

m_doPlausibilityCuts && !muonIsPlausible( muonProng, mc_frac)

Is Muon Good?

muonPart->score() >= (m_minMuonScore = 0.9)

Michel

Is Exist?

foundMichel == true

UROC: Deborah Harris

UBUNTU 12.04 32-Bit Installation

  • Username: minerva
  • Hostname: 23-25-1-49-static.hfc.comcastbusiness.net
  • All Required software and ROOT 5.34 Installed
  • .bashrc modified for ROOT and Minerva Software Requirements
  • Kerberos installed and modified for FNAL.GOV connection

UROC Software Installation

  • All Software installed, UROC_sw_manager.py works!
  • Waiting for modification of the access control list (ACL) of the MINERvA NuMI Router from Fermilab IT Department

UROC: Deborah Harris

Bios Settings

  • Advanced
    • USB Configuration
      • USB Ports
        • Enable
      • USB Legacy
        • Enable
  • Boot
    • Boot Menu Type
      • Advance
    • Boot to Optical Devices
      • Disable
    • Boot to Removable Devices
      • Enable
    • Boot to Network
      • Disable
    • USB Boot
      • Enable
    • Boot USB Devices First
      • Enable
    • USB Mass Storage Emulation Type
      • All Fixed Disc

Authorization

  • Kerberos Special Principal

    • minerva-roc/minerva/23-25-1-49-static.hfc.comcastbusiness.net
  • Hostname
    • 23-25-1-49-static.hfc.comcastbusiness.net
  • Kerberos Special Principal added to the .k5login File on the following machines
    • mnvonlinemaster
    • mnvonline0
    • mnvonline1
    • mnvonline2
    • mnvonlinebck1
    • mnvonlinelogger
    • minerva-evd
  • Carrie McGivern added the Hostname to the /etc/hosts.allow on the same list above
    • /etc/hosts.allow modification requires root password
    • minerva-evd.fnal.gov /etc/hosts.allow Allows all hosts
  • ACNET
    • Contacted with Jim Smedinghoff (smedinghoff@fnal.gov)
    • minerva does not using ACNET anymore
  • MINOS
    • Contacted with Arthur E Kreymer (kreymer@fnal.gov)

Documentation

  • Uroc User Details.xls Modified with new UROC Information
  • Manual for Expert Authorization updated

 

No Power on FNAL Control Room – April 19, 2014

  • UROCs need a mount to minerva-evd for GMBrowser
  • Tools/ControlRoomTools/authenticate/MountRemoteFS script responsible for mounting UROCs to minerva-evd
  • mnvonlinebck1.fnal.gov is the Emergency Server incase there is a problem with minerva-evd
  • New Script: MountRemoteFS_Emergency
    • This script uses the mnvonlinebck1.fnal.gov as the Bluearc Mount point
  • Tested on both UROCs at Tufts and GMBrowser works with a mount to mnvonlinebck1.fnal.gov
  • Updates committed to CVS and UROC Users informed with the update.
  • • Successfully tested Emergency Script: MountRemoteFS_Emergency

Nightly Build Integration

  • Latest version committed to CVS compiles with Nighlty Build
  • For stability:
    • I will continue development under v10r6p13
    • Whenever a new version released, I will switch o the new version
    • Since development done under v10r6p13, I will NOT commit changes to CVS
  • Shrinked package completely
    • No longer clone of CCPi0 and NukeCCQE
  • I will only use methods from these packages, not complete package

Vertex Reconstruction

  • Reconstruction Level Cut List

Name

Value

Has Vertex?

!event->hasInteractionVertex()

Is Null Vertex?

!vertex

Is Fiducial?

Apothem = 850, UpStreamZ = 5912, DownStreamZ = 8445.0

Update

  • reconstructEvent() Modified
    • NukeCCQE selections for Target Region is disabled
    • NukeCCQE selection for 2 Track Requirement is disabled
    • NukeCCQE event classification disabled
  • interpretEvent() for NukeCCQE
    • New Function tammy_interpretEvent() for NukeCCQE
  • Options Files are edited
  • Submitting Test Jobs
  • tagTruth() – A function called independently
    • Nothing done under tagTruth()
  • reconstructEvent()
    • Number of Outgoing Tracks (connected to vertex)
      • if ( vertex->getOutgoingTracks().size() < 2 )
        • return interpretFailEvent(event);
  • CCDeltaPlus runs without crashing
    • Muon Reconstruction is Successful
    • Proton Reconstruction is Successful
    • Pion Reconstruction is Unsuccessful – Needs check

Merging CCPi0 and NukeCCQE under CCDeltaPlus

  • NukeCCQE variables are included in the package.
    • These variables are starting with “tammy_”
  • Header File: CCDeltaPlusAna.h modified
    • All Classes defined
    • Private methods for both packages added
  • requirements file modified
    • NukeCCQE and CCPi0 requirements added
  • Implementation File: CCDeltaPlus.cpp modified
    • #include all header files for both packages
    • Default Function: reconstructEvent()
    • Modified to use both packages methods – Default Function: interpretEvent()
    • Modified to use both packages methods
    • Private Methods for both functions combined under CCDeltaPlus
  • Package Successfully Compiled
  • Successful Compile DOES NOT mean it will generate meaningful results. Needs careful analysis of the code.