Project

General

Profile

Feature #17099

Make standard geometry available in gallery environment

Added by Gianluca Petrillo about 2 years ago. Updated about 2 years ago.

Status:
Closed
Priority:
Normal
Category:
Geometry
Target version:
-
Start date:
07/03/2017
Due date:
% Done:

100%

Estimated time:
40.00 h
Spent time:
Experiment:
-
Co-Assignees:
Duration:

Description

This issue tracks the effort to have LArSoft standard geometry available to programs in gallery C++ environments.

Goals and restrictions

The goal is to have the standard geometry working in gallery. Restrictions apply:
  • the target environment won't need any LArSoft package depending on art
  • the accepted dependencies are all and only the ones currently in larsoftobj (which include gallery and lardataobj), plus the repository where the new code will reside
  • the only supported language is C++
  • the only supported geometry code is the one using the "standard" channel mapping currently provided in larcore

These items can be extended on demand after this feature is implemented. Also, the implementation should attempt not to deliberately prevent any of the features outside the "supported" area defined above.

gallery_geometry_minimal_test.cxx (2.5 KB) gallery_geometry_minimal_test.cxx Minimal test of geometry usage in gallery environment. Gianluca Petrillo, 07/05/2017 04:41 PM
gallery_geometry_test.cxx (4.98 KB) gallery_geometry_test.cxx Non-minimal test of geometry usage with gallery. Gianluca Petrillo, 07/05/2017 04:42 PM

Related issues

Blocks LArSoft - Feature #17177: Add backtracker (LarSoft service) information for the reconstruction-truth matching into GALLERY framework.Closed2017-07-13

Associated revisions

Revision d861bc9f (diff)
Added by Gianluca Petrillo about 2 years ago

Ran update script for code move from larcore to larcorealg (issue #17099)

Revision be3c1126 (diff)
Added by Gianluca Petrillo about 2 years ago

Ran update script for code move from larcore to larcorealg (issue #17099)

Revision 506dd646 (diff)
Added by Gianluca Petrillo about 2 years ago

Ran update script for code move from larcore to larcorealg (issue #17099)

Revision b110e254 (diff)
Added by Gianluca Petrillo about 2 years ago

Ran update script for code move from larcore to larcorealg (issue #17099)

Revision a9e2258d (diff)
Added by Gianluca Petrillo about 2 years ago

Ran update script for code move from larcore to larcorealg (issue #17099)

Revision e97d4e00 (diff)
Added by Gianluca Petrillo about 2 years ago

Ran update script for code move from larcore to larcorealg (issue #17099)

Revision 6c9217e1 (diff)
Added by Gianluca Petrillo about 2 years ago

Ran update script for code move from larcore to larcorealg (issue #17099)

Revision 8a8cb724 (diff)
Added by Gianluca Petrillo about 2 years ago

Ran update script for code move from larcore to larcorealg (issue #17099)

Revision f8ac5d5c (diff)
Added by Gianluca Petrillo about 2 years ago

Ran update script for code move from larcore to larcorealg (issue #17099)

Revision 385acb19 (diff)
Added by Gianluca Petrillo about 2 years ago

Ran update script for code move from larcore to larcorealg (issue #17099)

Revision 0317250a (diff)
Added by Gianluca Petrillo about 2 years ago

Ran update script for code move from larcore to larcorealg (issue #17099)

Revision 02907df1 (diff)
Added by Gianluca Petrillo about 2 years ago

Ran update script for code move from larcore to larcorealg (issue #17099)

Revision 200f6b12 (diff)
Added by Gianluca Petrillo about 2 years ago

Ran update script for code move from larcore to larcorealg (issue #17099)

Revision f2b65b57 (diff)
Added by Gianluca Petrillo about 2 years ago

Ran update script for code move from larcore to larcorealg (issue #17099)

Revision 03ca384a (diff)
Added by Gianluca Petrillo about 2 years ago

Ran update script for code move from larcore to larcorealg (issue #17099)

Revision 2ffa393f (diff)
Added by Gianluca Petrillo about 2 years ago

Ran update script for code move from larcore to larcorealg (issue #17099)

Revision f79d026c (diff)
Added by Gianluca Petrillo about 2 years ago

Ran update script for code move from larcore to larcorealg (issue #17099)

Revision f81b8838 (diff)
Added by Gianluca Petrillo about 2 years ago

Ran update script for code move from larcore to larcorealg (issue #17099)

Revision ecb4de0e (diff)
Added by Gianluca Petrillo about 2 years ago

Ran update script for code move from larcore to larcorealg (issue #17099)

Revision 75244ac6 (diff)
Added by Gianluca Petrillo about 2 years ago

Ran update script for code move from larcore to larcorealg (issue #17099)

Revision 011a66a0 (diff)
Added by Gianluca Petrillo about 2 years ago

Ran update script for code move from larcore to larcorealg (issue #17099)

Revision d554c78a (diff)
Added by Gianluca Petrillo about 2 years ago

Ran update script for code move from larcore to larcorealg (issue #17099)

Revision 5a8146bb (diff)
Added by Gianluca Petrillo about 2 years ago

Ran update script for code move from larcore to larcorealg (issue #17099)

Revision d554c78a (diff)
Added by Gianluca Petrillo about 2 years ago

Ran update script for code move from larcore to larcorealg (issue #17099)

Revision 200f6b12 (diff)
Added by Gianluca Petrillo about 2 years ago

Ran update script for code move from larcore to larcorealg (issue #17099)

Revision 200f6b12 (diff)
Added by Gianluca Petrillo about 2 years ago

Ran update script for code move from larcore to larcorealg (issue #17099)

Revision 200f6b12 (diff)
Added by Gianluca Petrillo about 2 years ago

Ran update script for code move from larcore to larcorealg (issue #17099)

Revision 200f6b12 (diff)
Added by Gianluca Petrillo about 2 years ago

Ran update script for code move from larcore to larcorealg (issue #17099)

Revision 200f6b12 (diff)
Added by Gianluca Petrillo about 2 years ago

Ran update script for code move from larcore to larcorealg (issue #17099)

Revision 200f6b12 (diff)
Added by Gianluca Petrillo about 2 years ago

Ran update script for code move from larcore to larcorealg (issue #17099)

Revision 200f6b12 (diff)
Added by Gianluca Petrillo about 2 years ago

Ran update script for code move from larcore to larcorealg (issue #17099)

Revision 200f6b12 (diff)
Added by Gianluca Petrillo about 2 years ago

Ran update script for code move from larcore to larcorealg (issue #17099)

Revision 200f6b12 (diff)
Added by Gianluca Petrillo about 2 years ago

Ran update script for code move from larcore to larcorealg (issue #17099)

Revision 200f6b12 (diff)
Added by Gianluca Petrillo about 2 years ago

Ran update script for code move from larcore to larcorealg (issue #17099)

Revision 74bf76c0 (diff)
Added by Gianluca Petrillo about 2 years ago

Ran update script for code move from larcore to larcorealg (issue #17099)

Revision 45b40168 (diff)
Added by Gianluca Petrillo about 2 years ago

Ran update script for code move from larcore to larcorealg (issue #17099)

Revision 7ec92a2f (diff)
Added by Gianluca Petrillo about 2 years ago

Ran update script for code move from larcore to larcorealg (issue #17099)

Revision 67bbe68c (diff)
Added by Gianluca Petrillo about 2 years ago

Ran update script for code move from larcore to larcorealg (issue #17099)

Revision 74bf76c0 (diff)
Added by Gianluca Petrillo about 2 years ago

Ran update script for code move from larcore to larcorealg (issue #17099)

Revision fed60729 (diff)
Added by Gianluca Petrillo about 2 years ago

Added update script for code move from larcore to larcorealg (issue #17099)

History

#1 Updated by Gianluca Petrillo about 2 years ago

  • Status changed from New to Assigned
  • Assignee set to Gianluca Petrillo
  • Estimated time set to 40.00 h

#2 Updated by Gianluca Petrillo about 2 years ago

I updated the repository larcorealg to work with new LArSoft. Not published (yet).

#3 Updated by Gianluca Petrillo about 2 years ago

Code has been moved from larcore into laocorealg:

  • all geometry code (except art services and service interfaces)
  • the configuration file geometry_lartpcdetector.fcl
  • the GDML description of the "standard" LArTPC detector
  • all utilities in TestUtils
  • all utilities in CoreUtils, except ServiceUtil.h and ServiceProviderWrappers.h (which are art-specific)
  • all unit tests pertaining moved code

Note that the GDML schema directory was already empty, thus saving me from a choice in there.
The full GIT history of the files is expected to have been retained.
In addition, new functions have been added in a lar::standalone namespace to facilitate the initialisation of geometry service provider and related facilities (FHiCL configuration parsing and message facility), aimed for use with environments like gallery.
These changes have been applied on the develop branch of larcorealg. They are breaking changes, and the branch has not been pushed yet.

The corresponding files have been removed from larcore. These changes have been applied on the feature/gp_Issue17099 branch of larcore. The branch has been published.
A script has been added to feature/gp_Issue17099 branch of larsoft, which performs all the necessary changes on the source code (see below). This information has been added to Breaking Changes LArSoft wiki page.
This script has also been run on develop branch of LArSoft repositories larcore, lardata, larevt, larreco, larsim, larana, lareventdisplay, larpandora and larexamples, and on experiment repositories argoneutcode, dunetpc, lariatsoft, sbndcode and uboonecode. The result has been pushed in each repository also as branch feature/gp_Issue17099. The remaining LArSoft repositories do not require changes.

All branches are updated to LArSoft develop (based on v06_42_00).

#4 Updated by Gianluca Petrillo about 2 years ago

Unit tests are successfully completed.
Also, a minimal program has been compiled (attached) and run in a UPS+gallery environment, as well as a non-minimal one (also attached).
The minimal test includes in its Doxygen documentation the instructions to compile it.
The tests were run using the LArTPC geometry from test_geometry.fcl configuration distributed in larcorealg.

#5 Updated by Gianluca Petrillo about 2 years ago

The script to update the code has been successfully used to update the whole LArSoft and experiment develop branches.
It has the usual usage pattern of the SerialSubstitution.py-based scripts:

v06_43_00-UpdateGeometryToLArCoreAlg.py -Uv sourceDir
will print all the actions to be performed in the specified directories (current one if not specified). Adding the argument --doit will also apply those changes:
v06_43_00-UpdateGeometryToLArCoreAlg.py -Uv --doit sourceDir

The script can safely rerun multiple times, as it does not change the code already updated.
The script is stored in larsoft/bin directory, and uses a library in larsoft/bin/python. Setting up larsoft UPS product is expected to configure the environment so that the script can be run just by name (that is, the bin directory is added to the execution search path list, and the python directory to the python module search path list).

Note that the name of the script is still subject to change at the time of this note.

#6 Updated by Gianluca Petrillo about 2 years ago

  • % Done changed from 0 to 90

Updated completion fraction. Known pending items:

  • push larcorealg develop branch (will make it impossible to compile with larcore develop until feature/gp_Issue17099 branches are merged)
  • confirm the name of the update script

#7 Updated by Gianluca Petrillo about 2 years ago

Changes to larcorealg have been pushed into develop and master branches (the latter, by accident).

#8 Updated by Gianluca Petrillo about 2 years ago

  • Status changed from Assigned to Resolved
  • % Done changed from 90 to 100

Code has been merged into LArSoft v06_43_00.

#9 Updated by Gianluca Petrillo about 2 years ago

  • Blocks Feature #17177: Add backtracker (LarSoft service) information for the reconstruction-truth matching into GALLERY framework. added

#10 Updated by Gianluca Petrillo about 2 years ago

  • Status changed from Resolved to Closed


Also available in: Atom PDF